在过去,我认为微软的Scott Hanselman使用了一些代码.但是现在我正在使用MVC5,我认为代码不再有效.
有没有办法可以跟踪MVC5中的路由,以便我知道为什么我会看到如下消息:
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
Run Code Online (Sandbox Code Playgroud)
c0y*_*teX 17
我知道OP已经晚了但是对于其他试图调试404错误的人我找到了一种拦截路由结果的方法,看看为什么它找不到资源.
在Global.asax.cs覆盖Init这样:
public override void Init()
{
base.Init();
this.AcquireRequestState += showRouteValues;
}
protected void showRouteValues(object sender, EventArgs e)
{
var context = HttpContext.Current;
if (context == null)
return;
var routeData = RouteTable.Routes.GetRouteData(new HttpContextWrapper(context));
}
Run Code Online (Sandbox Code Playgroud)
该routeData变量将举行的路线信息,因为它是被解释.我在MVC5上测试了这个.
我最初在Paul Evans的另一个回答中提到了这个方法,这是链接(感谢@porcus找到它):stackoverflow.com/a/25466524
| 归档时间: |
|
| 查看次数: |
6043 次 |
| 最近记录: |