2014-03-28 66 views
1

我從a YouTube video瞭解自定義路線的基本知識。我明白,我們需要除了默認路由創建自定義路線...名稱的重要性:默認路由中的「默認」是什麼?

我不明白什麼的

名稱使用/重要性:「默認」

默認的MapRoute。作爲測試,我改變Name屬性

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

,並與URL運行

../MvcApplication2/Home/Index/cars

和應用程序仍然工作正常。什麼是Name: "Default"用於?

回答

1

路線的名稱基本上只是一個用於唯一的密鑰標識該路線並用於在您想要使用特定路線時查找路線。 MVC框架將查看URL並確定用戶試圖訪問的位置。

例如,使用@Html.RouteUrl("Default")將使用url中的定義構建一個url,並在路由文件中定義默認值。

+0

好的。據我瞭解..當我們從路由收集中尋找特定路由時使用它,並從中提取特定路由...如何更改名稱:「aaa」將構建一個不同的URL ..我的意思是所有它實際上發生了什麼? –

+0

MVC路由引擎負責查找url模式並匹配路由。它將從集合中的第一條規則開始,並一直移動到最後一條與其匹配的規則。只要改變路由的名稱就不會影響它是否被MVC使用。也就是說,你應該在底部有一個'Default'路由,這樣用戶不會在404頁面出現。 – Justin

+0

我看到...它也接受空值..只是檢查 –