簡體   English   中英

mvc3異常路由

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM