【发布时间】:2013-02-12 16:51:33
【问题描述】:
我正在使用没有 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 可以正常工作,并且包含正常路线,最后没有默认的 catch-all 处理程序。
每当我尝试一些管理区域路由时,我都会收到 404 错误。我正在使用 Haack 的 RouteDebugger,它在 404 错误文本下方显示了一个完全匹配(并且只有一个匹配),以及正确的区域、控制器和操作。
我在 SO 上检查过类似的问题,但并不高兴。有什么想法可能是错的吗?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-4 asp.net-mvc-areas