Mvc 自帶分頁控件PagedList.Mvc Demo示例


添加/下載PagedList.Mvc 

直接搜索mvc pagelist 就會出來。安裝完成即可。在項目的packages文件夾下面就會出現PagedList.Mvc.4.5.0.0PagedList.1.17.0.0兩個文件夾

然后添加引用的就好了。

上示例代碼

        /// <summary>
        /// Mvc 分頁
        /// </summary>
        /// <param name="order"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public IPagedList<T> getMvcPageDataList(Func<T, bool> where, Func<T, object> order, int pageIndex, int pageSize)
        {
            //這里為了方便直接用的EF測試,其實這里可以直接用一個獲得的list比如:userInfoList.ToPagedList(page, pageSize));
            return context.Set<T>().Where<T>(where).OrderByDescending(order).ToPagedList(pageIndex, pageSize);
        }

控制器代碼

        /// <summary>
        /// mvcPageList 分頁
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <returns></returns>
        public ActionResult MvcPageList(int pageIndex = 1)
        {
            IPagedList<LX.EFOPT.Model.User_Info> modelUser_InfoList = User_InfoBLL.getMvcPageDataList(x => x.User_ID > 1, x => x.Create_Date, pageIndex, 2);

            return View(modelUser_InfoList);
        } 

View視圖代碼

注意:必須引用 PagedList、PagedList.Mvc

@using PagedList;
@using PagedList.Mvc;
@model PagedList<LX.EFOPT.Model.User_Info>
@{
    ViewBag.Title = "PageList";
}
<link href="../../Style/PagedList.css" rel="stylesheet" type="text/css" />
@{
    if (Model.Count > 0)
    {
      foreach (var item in Model)
      {
          @item.User_ID <br />@item.User_Name <br />@item.Create_Date <br /><p></p>
      } 
      @Html.PagedListPager(Model, page => Url.Action("MvcPageList", new { pageIndex = page }))
    }
}

配置路由

這里的路由配置的相對比較簡單,只是為了滿足測試而已。

            routes.MapRoute(
             name: "mvcPageList1",
             url: "{controller}/{action}/page{pageIndex}",
             defaults: new { controller = "User", action = "Index", pageIndex = 1 }
            );

輸出樣式

配置路由的效果如下:page2

MVC 分頁還是比較簡單的,容易上手。希望能給一些人一點點的幫助!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM