mvc5新特性RouteAttribute特征路由

mvc5新特性RouteAttribute特征路由,本文讲述如何开启mvc5的RouteAttribute路由功能并附上一个实例说明RouteAttribute是怎么工作的

mvc5新特性RouteAttribute特征路由,本文讲述如何开启mvc5的RouteAttribute路由功能并附上一个实例说明RouteAttribute是怎么工作的

 1、mvc5的RouteAttribute概述

  RouteAttribute的命名空间是System.Web.Mvc,区别与web api的RouteAttribute(它的命名空间是System.Web.Http)

  默认情况下mvc的特征路由(RouteAttribute)功能是关闭的,需要手动启动,启动方式:

        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapMvcAttributeRoutes();//启用Attribute路由

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }    

 2、RouteAttribute简单实例

 
        [Route("list.html")]
        [Route("list_{category}.html")]
        [Route("list_{category}_p{page:int}.html")]
        public void ArticleList(string category, int page = 1)
        {
            var title = string.IsNullOrEmpty(category) ? "所有资讯" : category + "资讯";

            Response.Write(string.Format("分类:{0},页码:{1}<br/>我们都是好孩子!!!", title, page));
        }
 
  Route("list.html")匹配地址:http://localhost:2000/list.html

  mvc5新特性RouteAttribute特征路由

  Route("list/{category}.html")  匹配地址:http://localhost:2000/list/news.html

  路由匹配地址:http://localhost:2000/list/bews/2.html

  Route("list/{category}/{page:int}.html")  匹配地址:http://localhost:2000/list/bews/2.html
  

  路由匹配地址:http://localhost:2000/list/bews/2.html

mvc5新特性RouteAttribute特征路由由懒人建站收集整理,您可以自由传播,请主动带上本文链接

懒人建站就是免费分享,觉得有用就多来支持一下,没有能帮到您,懒人也只能表示遗憾,希望有一天能帮到您。

posted @ 2018-03-29 18:58  ~雨落忧伤~  阅读(1714)  评论(0编辑  收藏  举报