ASP.NET MVC中進行分頁的方式有多種,但在NuGet上使用最廣泛的就是用PagedList、X.PagedList.Mvc進行分頁。(原名為:PagedList.Mvc,但是2014年開始,作者將項目名稱改名字為“X.PagedList.Mvc”),用這個插件的話會非常便利,大家可以試試,接下來將給大家講下如何安裝這個NuGet插件。
ASP.NET MVC 5使用X.PagedList.Mvc進行分頁教程(原名為PagedList.Mvc)
1、工具——NuGet 程序包管理器——管理解決方案的 NuGet 程序包
2、 搜索“X.PagedList.Mvc”,並安裝、引用
3、\Controllers\UserController.cs 后台代碼基本用法:
using PagedList; public ActionResult Index(int page = 1) { const int pageSize = 10; var iUsers = db.Users.OrderBy(p => p.Id).ToPagedList(page, pageSize); return View(iUsers); }
4、\Views\User\Index.cshtml 前台代碼基本用法:
@using PagedList @using PagedList.Mvc <table class=“table”> xxxx xxxx xxxx </table> @Html.PagedListPager((IPagedList)Model, page => Url.Action(“Index”, new { page }))
5、\App_Start\RouteConfig.cs 配置一下:
public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”); routes.MapRoute( name: “Default”, url: “{controller}/{action}/{page}”, defaults: new { controller = “User”, action = “Index”, page = UrlParameter.Optional } ); } }
6、效果圖:
我卻並沒有達到原作者的效果,因為我是mvc4,而那個控件對page屬性啊,都是要高版本的,所以出現了

編譯器錯誤消息: CS1705: 程序集“X.PagedList.Mvc, Version=4.8.0.38135, Culture=neutral, PublicKeyToken=abbb863e9397c5e1”所使用的“System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”版本高於所引用的程序集“System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”的版本
這個版本問題還是下載更新比較好

緊接着出現
嘗試訪問安全關鍵方法失敗
最終解決方案是:

1 Install-Package WebMatrix.Data 2 Install-Package Microsoft.AspNet.WebHelpers 3 Update-Package
vs控制台中安裝這些就可以,右鍵添加有時候會出問題,建議這樣添加。
這個問題主要存在於mvc4轉mvc5時發生的版本不兼容,報什么錯,我們再去解決,這不就是程序員存在的價值嗎?



