Asp.net MVC定義短網(wǎng)址的方法
在MVC的邏輯代碼里,Controller和Action是必須的,但是在網(wǎng)址里,并不需要完全體現(xiàn)Controller和Action。比如我們經(jīng)常希望看到http://localhost/About而不是http://localhost/Home/About。
默認(rèn)的路由規(guī)則
新建MVC應(yīng)用程序后,Global.asax里默認(rèn)注冊(cè)的路由規(guī)則是:
public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults ); }
我們可以定義自己的路由規(guī)則。
定義短網(wǎng)址
我們定義一個(gè)可以用http://localhost/About等同于http://localhost/Home/About的路由規(guī)則:
routes.MapRoute( "ShortAbout", "About", new { controller = "Home", action="About" } );
此時(shí)訪問(wèn)http://localhost/About和http://localhost/Home/About是一樣的。
以上語(yǔ)句只定義了一個(gè)短網(wǎng)址,為了普遍性,可以這樣定義路由規(guī)則:
routes.MapRoute( "ActionOnly", "{action}/{id}", new { controller = "Home", action = "About", id = UrlParameter.Optional } );
為了減少對(duì)其他Controller下默認(rèn)Action(URL無(wú)Action)的影響,可對(duì)Action作限制:
routes.MapRoute( "ActionOnly", "{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional }, new { action = "About|Index" } );
以上所述是小編給大家介紹的Asp.net MVC定義短網(wǎng)址的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
WPF數(shù)據(jù)綁定中的RelativeSource屬性
這篇文章介紹了WPF數(shù)據(jù)綁定中的RelativeSource屬性,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04Asp.Net Core 調(diào)用第三方Open API查詢物流數(shù)據(jù)的示例
這篇文章主要介紹了Asp.Net Core 調(diào)用第三方Open API查詢物流數(shù)據(jù)的示例,幫助大家更好的理解和學(xué)習(xí)使用Asp.Net Core,感興趣的朋友可以了解下2021-03-03如何使用ASP.NET MiniAPI 調(diào)試未匹配請(qǐng)求路徑
ASP.NET MiniAPI是一個(gè)輕量級(jí)的Web API框架,它可以讓我們快速地構(gòu)建和部署RESTful服務(wù),本文給大家介紹使用ASP.NET MiniAPI 調(diào)試未匹配請(qǐng)求路徑的方法,感興趣的朋友一起看看吧2024-01-01Web.config 和 App.config 的區(qū)別分析
Web.config 和 App.config 的區(qū)別分析,需要的朋友可以參考一下2013-05-05.net+FusionChart實(shí)現(xiàn)動(dòng)態(tài)顯示的柱狀圖和餅狀圖
這篇文章介紹了.net+FusionChart實(shí)現(xiàn)動(dòng)態(tài)顯示柱狀圖和餅狀圖的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07asp.net(c#)文件下載實(shí)現(xiàn)代碼
本文通過(guò)一個(gè)實(shí)例向大家介紹用C#進(jìn)行Internet通訊編程的一些基本知識(shí)。我們知道.Net類包含了請(qǐng)求/響應(yīng)層、應(yīng)用協(xié)議層、傳輸層等層次。2009-11-11