這個東西好像,一般也不經常動,都用預設的即可。由於
mvc模式在
framework
裡面的解析機制,區別與
webform
模式,是採用解析路由機制的
url。從來例項化檢視列物件,然後對該
action
進行操作,所以路由顯得也很重要,也可以理解為這個是乙個預設的
rul。
按照上文
mvc模式,首先傳送請求到**部分,會先解析路由機制,然後找到相應檢視控制器下面的相應的
action
方法,其實就是乙個預設引導作用。下面說一下預設路由和自定義路由,以及方法引數分析,其實也沒什麼。
路由機制我見過的有以下兩種:
預設路由
我見過的路由是在
global.asax
檔案中。預設路由為:
demo
routes.ignoreroute(".axd/");
routes.maproute(
"default", // 路由名稱
"//", // 帶有引數的 url
new // 引數預設值
);
根據上面的
demo
,可以看出,這個路由存在於全域性檔案裡面,以靜態方法存在。接受的引數為乙個路由集物件。方法裡面應用了路由物件的兩個方法,第乙個方法「
ignoreroute
」表明:忽視給出的可用的路由的指定
url路由。這裡主要是為了適應
asp.net
,這是一些
*axd
格式的**路徑不通過
mvc執行。去掉它,程式也可以正常執行,我在想它是不是起到了一種初始化或者過濾路由功能。第二個方法「
maproute
」就是對映路由了。系統給出了預設路由
url,是不是很人性化。這個
maproute
方法裡面有三個引數,分別是路由名稱、帶有引數的
url、引數預設值。在這裡就可以配置程式第一次啟動要進入的那個
url了。其實就這麼點兒東西,理解執行機制,路由就是這樣用。
關於自定義路由:
在預設路由上面按照預設路由方法,寫出自定義跳轉的
controller
、action
即可。這裡要注意一點兒就是,自定義路由要寫到預設路由上面,否則,跳轉的時候,還是會跳轉到預設路由。當自定義路由出問題的時候,還是會跳轉到預設路由的。
//自定義路由
routes.maproute("haha", "//", new );
另外,我們如果在操作過程中,需要用到路由轉換機制,那麼我們還是可以在
cshtml
裡面利用
html.routehtml
來自定義路由,方法和自定義路由一樣。
@html.routelink("luyoumingcheng", new );
上面這兩種方法,路由後面的不管是
id還是其他引數,我們還可以通過
id(或者其他引數)來更快的找到我們想要的頁面。
路由約束
在匹配url
或者自定義路由的同時,我們還可以對我們自定義的
url或者路由進行條件約束,從而得到我們需要的路由。
demo
//匹配字母或者數字或者下劃線重複多次
routes.maproute("haha", "//", new , new );
總的來說,使用路由構造的
url或者請求匹配的
url會在一定程度上,讓我們的頁面轉換更加方便。上網查了查說路由機制,可以在一定程度上,避免
sql注入攻擊。路由其實真的研究起來,實用的地方真的特別多,微軟官方文件上,關於路由物件的方法可謂有多種多樣,還需要我們以後多多去應用理解。
mvc框架封裝 二 路由類篇
mvc框架封裝 二 路由類篇 route new core lib route 引入路由類來觸發spl autoload register 使訪問的位址為 com.index index p route 在core資料夾中conf目錄中建立route.php namespace core lib u...
vue學習筆記(二) 路由配置
在router index.js檔案中對所有的路由資訊進行配置。首先引入vue和vue router import vue from vue import vuerouter from vue router 使用vue router vue.use vuerouter 引入待配置的檢視元件 impo...
WPF 二 路由事件1 冒泡路由事件
wpf中的路由事件是具有更強傳播能力的事件,它們可以在元素樹中向上冒泡和向下隧道傳播,並且沿著傳播路徑被事件處理程式處理。下面的例子演示了事件冒泡的過程。window x class prj05 1.mainwindow xmlns xmlns x title bubbledlabelclick h...