如果您的解决方案中有区域,则使用 MVC3/4,它将尝试解决区域和根级别控制器的顺序是什么?
例如:
它会先尝试根级路由,然后按字母顺序尝试区域级路由吗?
还是先按字母顺序检查区域级路由,然后再检查根级?
谢谢
如果您的解决方案中有区域,则使用 MVC3/4,它将尝试解决区域和根级别控制器的顺序是什么?
例如:
它会先尝试根级路由,然后按字母顺序尝试区域级路由吗?
还是先按字母顺序检查区域级路由,然后再检查根级?
谢谢
MVC 解析器首先区域特定路由,然后是根级别路由。这是因为默认情况下您在 Global.asax 中有下一个代码:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas(); //1. registers areas
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes); //2. only after that register root routes
}
我没有尝试过,但如果你想改变这种行为,你可以尝试在你的项目中交换这些代码行。