2012-10-16 53 views
0

我想創建一些SEO友好的URL。搜索引擎優化的URL路由URL Frostly URL

以下是我Global.ascx項:

 

routes.MapRoute(
    "Product", 
    "{action}/{param1}/{id}", 
    new { controller = "Home", action = "Index" }); 

routes.MapRoute(
    "Default", 
    "{controller}/{action}/{id}", 
    new { controller = "Home", action = "Index", id = UrlParameter.Optional }); 

第一個映射,因爲我不想顯示的URL我的控制器名稱。 下一步映射適用於URL的其餘部分。

問題是有一些網址,給了我這樣的錯誤:

 

http://localhost:1234/index/my-product-information/12 : PASS 
http://localhost:1234/contentcontrol/index    : PASS 
http://localhost:1234/contentcontrol/index/12   : FAIL 

這裏, 指數:動作名稱 ContentControl中:控制器名稱

我應該如何解決這個問題。

在此先感謝。

回答

0

你得到的問題是,當你的第一條路線與第二條路線相區別時,沒有什麼區別你的第一條路線,因此第一條路線可以捕獲所有這些請求,並「隱藏」第二條路線。爲了避開它,你必須區分這兩條路線,例如通過製作第一路線模式:

"/Go/{action}/{param1}/{id}" 
相關問題