我正在使用没有 WebAPI 的 MVC4,只是在 MVC 上简单。我有一个正确注册的管理区域(像往常一样称为“管理”):
public class AdminAreaRegistration : AreaRegistration
{
public override string AreaName { get { return "Admin"; } }
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute("EditGroupRoute", "admin/groups/{action}/{id}", new { controller = "EditGroup", action = "Index", id = UrlParameter.Optional });
//...
//No default handler at the end, all routes are predetermined
}
全球.asax:
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
//...
}
}
我的常规非区域RouteConfig.RegisterRoutes
按应有的方式工作,并且包含正常路线,最后没有默认的全部处理程序。
每当我尝试一些管理区域路由时,我都会收到 404 错误。我正在使用 Haack 的 RouteDebugger,它在 404 错误文本下方显示了一个完全匹配(并且只有一个匹配),以及正确的区域、控制器和操作。
我已经检查了关于 SO 的类似问题,但没有任何乐趣。有什么想法可能是错的吗?