我有一个包含多个区域的asp.net mvc Web应用程序。
除了一个区域外,这个应用程序中大约有15个区域正确地路由所有这些区域。
当我直接进入索引页面时出现500.19错误,这个区域就会爆炸。
路由,控制器和视图对于所涉及的所有区域基本上非常相似。
我注意到的一件事是提供的错误显示了正在请求的特定视图的错误区域路径(物理路径)。这可以在提供的图像中看到,但它将其显示为知识索引视图的物理路径。 :
C:\项目\ MVC \测试\ BatmanProject \索引
它应该显示这样的东西。 :
C:\项目\ MVC \测试\ BatmanProject \领域\罗宾\视图\主页\索引
如下所示,它试图直接在batmanproject中查找索引视图,而不是查看robin区域。而所有其他区域(Riddler,Joker等)直接在相应区域找到索引而不会抛出500.19错误。
我知道它与web.config无关,因为所有其他区域都在工作。我尝试过很多东西,比如。 :
我很困惑为什么会出现这个特定区域,而不是其他任何人看到这样的错误?
***有问题的路线
http://localhost/BatmanProject/Robin/Home/Index
*** AreaRegistration
public override string AreaName
{
get
{
return "Robin";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Robin_default",
"Robin/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}