zoukankan      html  css  js  c++  java
  • [转载]Asp.net MVC2 与 MVC3 路由调试好帮手RouteDebug 与 RouteDebugger

    RouteDebug 与 RouteDebugger是什么?

     

    在Asp.Net MVC程序中,路由(Route)是一个非常核心的概念,可以说是MVC程序的入口,因为每一个Http请求都要经过路由计算,然后匹配到相应的Controller和Action。通常我们的路由都会注册在Global.asax.cs文件中的RegisterRoutes方法中,路由会从上往下依次匹配,因此自定义的(优先级高)的路由需要放在默认(通用)路由的前面。但是,如何确保所有的路由都是正确的,或者是没有重复的呢?RouteDebug 与 RouteDebugger就是这样一个分析工具。

    使用方法

    RouteDebug主要是用在MVC2的       RouteDebug下载

    总所周知,一般引用第三个插件的时候我们都会习惯性的在项目里面增加lib文件,这里就需要把RouteDebug添加到项目的lib文件中如下图:

    接着点击上图看到的引用找到lib文件夹下面的RouteDebug.dll添加引用,接下来就在Global文件里面的Application_Start中注册:

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

    接下来就可以测试了。

    RouteDebugger主要是用在MVC3      RouteDebugger下载

    RouteDebugger的使用方法和RouteDebug的差不多,都是新建一个lib文件放第三方插件,然后添加引用。MVC3的不需要在Global文件里面的Application_Start中注册,这是因为.NET4.0新增的程序集Microsoft.Web.Infrastructure允许动态注册HttpModule,RouteDebugger将格式化的路由调试信息追加(append)到每一个request里。这里需要注意一下,如果web.config文件中没有如下代码的要记得添加上

    调试结果如下:

     

    禁用路由调试功能

    当你在调试MVC2的路由的时候,页面的内容是看不到的,打开的每个页面都是调试的路由信息。如果是调试MVC3的路由信息的时候,每个页面的后面都会增加调试的信息。如果你不想要以上两种情况的出现。那么分别设置如下的信息就可以实现了。

    MVC2  的 RouteDubeg:

    只要把之前在Global文件里面的Application_Start中注册的信息注释掉重新编译就好了。

    MVC3  的 RouteDubegger:

    只要在Web.config文件里面将RouteDebugger:Enabled后面的value值设置为"false"即可关闭RouteDebugger模式。

    原文地址:http://www.cnblogs.com/boruipower/archive/2012/11/16/2773040.html

  • 相关阅读:
    和阿木聊Node.js
    C#开发攀爬集锦
    MyBatis实战
    对于技术的思考
    抛物线习题
    变量集中策略
    变换作图中的常用模板函数
    网上看到一题目的解法的启示
    函数习题
    新定义习题
  • 原文地址:https://www.cnblogs.com/iack/p/3551900.html
Copyright © 2011-2022 走看看