微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc – 有一种方法我可以在ASP中调试路由. MVC5?

过去我用微软的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.

解决方法

我知道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));
    }

routeData变量将保存正在被解释的路由信息​​.我已经在MVC5上测试过了.

我最初在保罗·埃文斯的另一个答案中碰到这种方法,这是链接(感谢@porcus找到它):stackoverflow.com/a/25466524

原文地址:https://www.jb51.cc/aspnet/249428.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐