zoukankan      html  css  js  c++  java
  • 使用RouteDebugger对MVC路由进行调试

    本文导读:在Asp.Net MVC程序中,路由是MVC程序的入口,每一个Http请求都要经过路由计算,然后匹配到相应的Controller和Action。通常我们的路由都会注册在Global.asax.cs文件中的RegisterRoutes方法中。但是,如何确保所有的路由都是正确的,或者是没有重复的呢?RouteDebugger就是这样一个分析工具。

    一、RouteDebugger安装

    方式1、在程序包控制台中执行命令

    PM> Install-Package routedebugger

    安装成功后Web.config文件中会自动加入行

    <add key="RouteDebugger:Enabled" value="true" />

    方式2

    使用NuGet很方便的安装RouteDebugger,在项目上面右键-"Manage NuGet Packages"-"Online"输入"RouteDebugger"然后"Install"

    方式3、下载RouteDebugger.dll,引用到web项目中

    手动在web.config中加入

    <add key="RouteDebugger:Enabled" value="true" />

    二、RouteDebugger路由调试的使用

    1、对于.NET3.5和MVC3之前的项目,如果要使用RouteDebugger,还需要在Application_Start中注册

     
    C# 代码   复制
            protected void Application_Start()
    
            {
                AreaRegistration.RegisterAllAreas();
    
                RegisterRoutes(RouteTable.Routes);
    
                //注册RouteDebug
                RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);
            }
    

    2、如果是MVC3、MVC4、MVC5,则无需在Application_Start中注册。

    3、然后按F5运行程序你就可以看到效果了。

    从浏览器的输出我们可以看到详细的Route匹配信息,当前请求可以成功匹配哪些路由

    三、禁用RouteDebugger

    当使用了RouteDebugger后,你会发现每一个页面的后面都会附带路由信息。如果你需要禁用这个功能,打开Web.config,

    将RouteDebugger:Enabled后面的value="false"即可关闭RouteDebugger模式。

    <!--禁用-->
    <add key="RouteDebugger:Enabled" value="false" />
    <!--启用-->
    <add key="RouteDebugger:Enabled" value="true" />
  • 相关阅读:
    23.java方法的深入
    MapReduce:详解Shuffle过程
    Hadoop1.x与Hadoop2的区别
    进程控制的一些api
    程序的静态链接,动态链接和装载
    用户级线程和内核级线程的区别
    从Hadoop框架与MapReduce模式中谈海量数据处理(含淘宝技术架构) (转)
    海量处理面试题
    面试中的二叉树题目
    linux 进程间消息队列通讯
  • 原文地址:https://www.cnblogs.com/fuqiang88/p/6076667.html
Copyright © 2011-2022 走看看