【发布时间】:2014-11-30 13:19:56
【问题描述】:
我的应用程序使用多个路由。以下是两个相关的:
routes.MapRoute(name: "MyRoute",
url: "Flow",
defaults: new { controller = "MyCtrl1", action = "Index" });
routes.MapRoute(name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "MyCtrl2", action = "Index", id = UrlParameter.Optional });
现在我有一个返回的Action:
return RedirectToAction("Index", "Flow", new {Id = <currId>});
现在框架可能做了它的优化("Default" 路由有一个默认的action 命名为"Index")并且重定向 url 我得到是:
https://<host>/Flow?Id=<currId>
虽然预期的网址是:
https://<host>/Flow/Index?Id=<currId>
我的问题是我希望"Default" 路由处理请求,而"MyRoute" 处理它。
看起来框架做了优化,忘记检查优化后预期的路线是否改变了。
我的问题:
- 您是否发现我的路线有问题?还是这是一个框架错误?
- 有没有办法阻止这些优化并返回
Flow/Index?
【问题讨论】:
标签: asp.net asp.net-mvc routing routes asp.net-mvc-routing