Url.Action在url中显示页面no

时间:2011-05-31 06:40:42

标签: asp.net-mvc-3

尝试这样

 Url.Action("Index", "Home", new { page = 5 })

给我的网址像

/Home/Index?page=5

如何获得这样的网址

/Home/Index/5

1 个答案:

答案 0 :(得分:1)

通过定义路线:

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

请注意默认路由(使用id的路由),因为它类似。您可能需要将此自定义路由放在默认路由之前,或者删除默认路由,因为在这种情况下它很少被命中。

我建议您浏览Routing tutorials以深入了解它们的工作原理。