首页 > Web开发 > 详细

ASP.NET MVC路由模块

时间:2014-02-24 13:27:58      阅读:372      评论:0      收藏:0      [点我收藏+]

asp.net mvc里面有个路由模块,这模块是访问网站最开始匹配控制器的作用。这是golbal里面的注册路由

   //注册路由规则,应用程序一开始的时候已经将路由规则注册到了路由表里面去了。
            RegisterRoutes(RouteTable.Routes);

 源地址:http://www.cnblogs.com/sixiangqimeng/p/3562285.html

bubuko.com,布布扣
        public static void RegisterRoutes(RouteCollection routes)
        {

            //1、 路由规则 key必须是唯一的。
            //2、 路由规则是有顺序。如果前面的规则已经被匹配上了,那么后续的规则就不被匹配了。
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "Default", // 路由规则:名称,必须是唯一的。
                "{controller}/{action}/{id}", // 带有参数的 URL  http://localhost/home/index  =>controller:home
                //action:index
                new { controller = "UserInfo", action = "Index", id = UrlParameter.Optional }, // 参数默认值
               new { },//约束参数,约束 控制器,约束action必须符合某个正在表达式。
                new string[] { "MvcApplication1.Controllers" }//约束控制器必须是在某个命名空间下。
            );


            routes.MapRoute(
               "Default2", // 路由规则:名称,必须是唯一的。
               "{controller}-{action}/{id}", // 带有参数的 URL  http://localhost/home/index  =>controller:home
                //action:index
               new { controller = "Ajax", action = "Index", id = UrlParameter.Optional } // 参数默认值
           );


 routes.MapRoute(
               "Default3", "*values"
               new { controller = "home", action = "Index", } // 参数默认值
           );


        }
bubuko.com,布布扣

三种路由模式,首先要说明,路由模块是可以先写多个路由规则,但是路由名称一定要唯一,不然的话,会报错,然后就是匹配规则,没什么好说的。里面有重装,可以匹配控制器模式,
 new string[] { "MvcApplication1.Controllers" }这个是定义在某个命名空间下进行搜索。这个是配合MVC中区域功能的使用。区域功能是比如有许多的控制器,便可以设置不同区域,便于查找,这样每一个区域变会有一个路由,如果两个区域有相同的控制器名称的话,就必须要设置命名空间,不然的话,会报错,设置好命名空间后,这个问题便可以解决

 源地址:http://www.cnblogs.com/sixiangqimeng/p/3562285.html

ASP.NET MVC路由模块

原文:http://www.cnblogs.com/sixiangqimeng/p/3562285.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!