我在VS 2015网络应用程序中有两个控制器,我使用asp标签助手来定义一个常规菜单来调用每个视图,该菜单中的一个选项使用另一个控件但是总是调用相同的控制器,我不确定如果MVC 6现在发生了变化 我使用以下路线:
config.MapRoute(
name: "Event",
template: "Event/{action}",
defaults: new { controller = "Event", action = "Index" }
);
config.MapRoute(
name: "App",
template: "App/{action}/{id?}",
defaults: new {controller="App",action="Index"}
);
答案 0 :(得分:0)
根据我的发现,默认情况下,必须使用属性在MVC 6中设置路由。有一个垫片(请参阅http://www.strathweb.com/2015/01/migrating-asp-net-web-api-mvc-6-exploring-web-api-compatibility-shim/)以允许与您尝试的方法兼容。
此页面(http://www.ryadel.com/en/custom-routing-method-names-in-asp-net-5-mvc-6/)有点误导,因为它听起来像是在MapRoute和/或使用属性之间做出选择。无论如何,它有一些很好的例子。
摘要:删除对MapRoute的所有调用,并使用控制器中的属性。