0
我已經看到Paging and routing in ASP.Net MVC但我無法爲我工作。MVC中的漂亮頁面路由
在我的主頁我想爲我的傳呼下列漂亮網址:
http://mysite
http://mysite/2
http://mysite/3
有無路由尋呼機生成的默認網址如下:
http://mysite/?page=1
http://mysite/?page=2
http://mysite/?page=3
我RouteCollection迄今爲:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"HomePaging",
"{page}",
new { controller = "Home", action = "Index" },
new { page = @"\d+" },
new[] { "MySite.Controllers" });
routes.MapRoute(
"HomePagingFirst",
"{controller}",
new { controller = "Home", action = "Index", page = 1 },
new[] { "MySite.Controllers" });
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new[] { "MySite.Controllers" });
}
這產生以下路線:
http://mysite/1
http://mysite/2
http://mysite/3
這不僅產生一個用於第一頁的非規範的路線,但它也造成類似下面@Html.ActionLink("my site", "Index", "Home")
產生與當前頁的頁號被追加的所有鏈接。
任何想法如何做到這一點?如果可以的話,一個簡短的解釋和答案將是最受歡迎的。
如果在你的'HomePaging'route你改變什麼'新{控制器= 「家」,行動= 「索引」}''到新{控制器= 「家」,行動= 「索引」,頁= UrlParameter.Optional}'? – cheesemacfly
也許actionLink像這樣@ Html.ActionLink(「my site」,「index」,「Home」,new {page = page}); – Stiger
感謝您的建議。我終於搞定了,但我仍然沒有真正掌握規則。 –