我有這兩條路線:如何強制鏈接使用特定航線(MVC路由)
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"Default2", // Route name
"{controller}/{action}/{OrderId}/{CustomerID}", // URL with parameters
new { controller = "NorthwindOrders", action = "Index", OrderId = UrlParameter.Optional, CustomerID = UrlParameter.Optional } // Parameter defaults
);
,並希望創建一個使用第二路徑路段。
我怎樣才能做到這一點?
您應該反轉這兩個參數,因爲第二個參數都是可選的(與上面的id參數相同),第一個URL將始終與第一個參數匹配。即使那些匹配「Default」的鏈接也會匹配「Default2」,因此您應該使用OrderId和CustomerId(或者至少OrderId – Buildstarted 2011-05-16 20:20:44
當您使用Html.ActionLink時,您可以指定要使用的Route Name – 2011-05-16 20:23:35