我在mvc应用中遇到路由问题。我的核心应用程序包含在“PreApplicationStartMethod”中加载的ProductsController和扩展。在这个扩展中,我注册了这样的路线:
routes.MapRoute(
name: "ProductDetails",
url: "Products/Details/{id}",
defaults: new { controller = "StandardProductsDetails", action = "Details" },
namespaces: new []{ "Shop.Controllers" }
);
在我的核心应用程序中,我没有为ProductsController注册特定路线,但我有一条通用路线:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "Shop.Controllers" }
);
现在,当我在Web浏览器中输入/ Products / Details / 1时重定向到ProductsController。
添加路线的Oderd首先是具体的,一般是最后的。我查了路线表,我的路线就在其中。
答案 0 :(得分:0)
我认为您在这里使用了两个项目,如果您正在使用,那么请将项目作为启动项目(通过右键单击)将其首先命中。