我有一個頁面,它通過GET或POST傳遞其ID來顯示帖子。MVC3中的URL重寫
例如: www.example.com/post/viewpost?id=PostTiTle
但我想實現此類似: www.example.com/post/PostTiTle
所以發帖ID應該在使用單個控制器的URL中。我怎樣才能做到這一點?
我有一個頁面,它通過GET或POST傳遞其ID來顯示帖子。MVC3中的URL重寫
例如: www.example.com/post/viewpost?id=PostTiTle
但我想實現此類似: www.example.com/post/PostTiTle
所以發帖ID應該在使用單個控制器的URL中。我怎樣才能做到這一點?
如果你沒有修改任何設置,默認的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 }
);
它使用默認路由,但它不是我想要的, 我想發送ID像這樣 www.example.com/post/PostTiTle –
@ShahzaibAliKhan告訴我你的控制器名稱和動作名稱,我會告訴你你需要輸入什麼路線。 – sed
謝謝,但任務完成感謝你們 –
這將使用默認路由。你有什麼嘗試? – jrummell
不,路由在我未知的MVC 3 –
從這裏開始:http://www.asp.net/mvc/overview – jrummell