[英]mvc3 unusual routing
除默認設置外,我有兩條路線:
routes.MapRoute("ShopDefault",
"Shop/{id}/{action}",
new { controller = "Shop" });
routes.MapRoute("Shop",
"Shop/{id}/List/{categoryID}",
new { controller = "Shop", action = "List"});
第一條路線可以正常工作,可以正確處理.../Shop/3/Index
, .../Shop3/Messages
類的鏈接。
但是對於第二條路線-找不到類似於.../Shop/3/List/5
鏈接。 有人知道為什么嗎?
您的更明確的路由應該首先是,路由引擎嘗試匹配ShopDefault中的Shop / Id / Action,然后可能會失敗,並在您到達更明確的Shop路由之前給您一個404。
您應該按照相反的順序放置路線:
routes.MapRoute(
"Shop",
"Shop/{id}/List/{categoryID}",
new { controller = "Shop", action = "List"},
new { id= @"\d+" }
routes.MapRoute(
"ShopDefault",
"Shop/{id}/{action}",
new { controller = "Shop" });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.