2012-09-09 40 views

回答

1

您確定要將mydomain/home/index?name=Johnmydomain?name=John作爲您網站上的網址嗎?

如果你糾正了你的路由引擎,你的路由可能是mydomain/home/index/johnmydomain/john,這對我來說會更加正確。

這就是你要去的地方嗎?

如果是這樣,假設你有一個Index動作,在你的家庭控制器中接受一個名字的字符串參數,你可以修改你的global.asax,並且改變默認路由,並且像這樣在標準默認路由下添加一條路由:

 routes.MapRoute(
     "Default", // Route name 
     "{controller}/{action}/{id}", // URL with parameters 
     new { controller = "Home", action = "Index", name= UrlParameter.Optional } // Parameter defaults 
    ); 

    routes.MapRoute(
     "NameOnly", // Route name 
     "{name}", // URL with parameters 
     new { controller = "Home", action = "Index" } // Parameter defaults 
    ); 

要確保你把這個名字唯一途徑在底部,如基於字符串的參數,會匹配一切,所以你需要先匹配更明確的。

+0

我的控制器是針對網站的ajax調用 - 不需要友好的url – Yosef

2

正確的網址如下:

http://mydomain.com/?name=John 

由於默認路由設置,這將調用上Home控制器Index行動並通過name參數。

只要您關於mydomain?name=John網址的要求被考慮,那麼這個網址看起來並不完整。

相關問題