MVC5新特性(一)之RouteAttribute打造自己的URL規則


1、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

  

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

  

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

  

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM