2012-07-03 182 views
3

我有一個非常有趣的案例:ASP.NET MVC 3路由沒有具體的控制器

我有這個地方已經在着手

但我也想讓這些網址工作以及

農場的部分是假的,它不這樣做,除了SEO存在什麼,有沒有與之相關的相應的控制器或動作

基本上,我已經有很多路線了,但我也喜歡這個網站如果在「mysite」主機名之後追加「farm」,則表現完全相同。所以它就像一個子目錄,就像在主站點上一樣。

回答

3

您可以添加具有約束的路線。確保它在默認路線上方。

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

它只是讓開始「農場」從第3段第2段和動作名稱得到他們的控制器的名字肯定的URL。

+2

此外,還要記住,如果不想要外出的網址有農場 –

+0

花後先註冊該航線我有一段時間才注意到訂單確實很重要。 –

1

我假設你有一個FarmController,你可以讓他們擊潰你的farmcontroller

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

對不起,我沒有提前說過,但農場的一部分只是一個假的友好的文字。沒有相應的控制器。 –

+1

然後你可以使用查詢字符串得到它 –