2013-01-14 82 views
0

我有一個頁面,它通過GET或POST傳遞其ID來顯示帖子。MVC3中的URL重寫

例如: www.example.com/post/viewpost?id=PostTiTle

但我想實現此類似: www.example.com/post/PostTiTle

所以發帖ID應該在使用單個控制器的URL中。我怎樣才能做到這一點?

+1

這將使用默認路由。你有什麼嘗試? – jrummell

+0

不,路由在我未知的MVC 3 –

+1

從這裏開始:http://www.asp.net/mvc/overview – jrummell

回答

2

如果你沒有修改任何設置,默認的MVC路由示例應該可以工作。

public ActionResult Index(string id) 
{ 
    // do something with variable id = PostTiTle 
} 

如果你的控制器名稱爲郵政,你的動作名稱是ViewPost,那麼你需要添加像這樣額外的路線。

routes.MapRoute(
    "Post", 
    "post/{id}", 
    new { controller = "Post", action = "ViewPost", id = UrlParameter.Optional } 
); 
+0

它使用默認路由,但它不是我想要的, 我想發送ID像這樣 www.example.com/post/PostTiTle –

+0

@ShahzaibAliKhan告訴我你的控制器名稱和動作名稱,我會告訴你你需要輸入什麼路線。 – sed

+0

謝謝,但任務完成感謝你們 –