刚开始找PagedList分页不是例子太复杂,就是写的过于简略,由于对于MVC的分页不太了解,之前使用的都是Asp.Net 第三方控件 + 数据库存储过程分页。还是老外写的例子简捷,https://github.com/TroyGoode/PagedList  。

1、本实例采用MVC + EF 框架,至于怎么配置,就不再这里说了。

2、安装 "PagedList.Mvc"的同时 “PagedList”会自动安装

路径:解决方案资源管理器 -> 选中工程名,点击右键 -> 管理NuGet程序包

首先选中联机,再选中 “PagedList.Mvc” 进行安装

3、在控制器HomeController.cs 中添加代码

3.1 添加命名空间

    

  1. using PagedList.Mvc;
  2. using PagedList;

3.2 在Index方法中添加代码

  1. #region 0.7 查询文章列表--分页 + ActionResult Index()
  2. /// <summary>
  3. /// 查询 文章 列表 并分页
  4. /// </summary>
  5. /// <returns></returns>
  6. public ActionResult Index(int?page)
  7. {
  8. var query = db.BlogArticles.Where(d => d.AIsDel == false).OrderByDescending(d => d.AId) ;
  9. var pageNumber = page ?? ; // if no page was specified in the querystring, default to the first page (1)
  10. var onePageOfProducts = query.ToPagedList(pageNumber, ); // will only contain 25 products max because of the pageSize
  11. ViewBag.OnePageOfProducts = onePageOfProducts;
  12.  
  13. return View();
  14. }
  15. #endregion

4、在视图Index.cshtml中添加代码
        4.1 在添加代码前,现在编译一下代码,否在在视图中添加命名空间会提示”缺少引用命名空间“的语法错误,解决方案资源管理器->选中工程点击右键->重新生成

4.2  添加命名空间

  1. @using PagedList;
  2. @using PagedList.Mvc;

4.3  显示文章列表

  1. <!DOCTYPE html>
  2.  
  3. <html>
  4. <head>
  5. <meta name="viewport" content="width=device-width" />
  6. <title>Index</title>
  7. <link href="/Content/PagedList.css" rel="stylesheet" type="text/css" />
  8. <style type="text/css">
  9. #tbList
  10. {
  11. border:1px solid #0094ff;
  12. border-collapse:collapse;
  13. margin:10px auto;
  14. width:800px;
  15. }
  16. #tbList th,td
  17. {
  18. border:1px solid #0094ff;
  19. padding:10px;
  20. }
  21. </style>
  22. <script type="text/javascript">
  23. function del(Aid) {
  24. if (confirm("确定要删除吗?"))
  25. window.location = "/Home/Del/" + Aid;
  26. }
  27. </script>
  28. </head>
  29. <body>
  30. <table id="tbList">
  31. <tr>
  32. <th>id</th>
  33. <th>标题</th>
  34. <th>分类</th>
  35. <th>状态</th>
  36. <th>时间</th>
  37. <th>操作</th>
  38. </tr>
  39. @foreach (var a in ViewBag.OnePageOfProducts)
  40. {
  41. <tr>
  42. <td>@a.AId</td>
  43. <td>@a.ATitle</td>
  44. <td>@a.BlogArticleCate.Name</td>
  45. <td>@a.Enumeration.e_cname</td>
  46. <td>@a.AAddtime</td>
  47. <td>
  48. <a href="javascript:del(@a.AId)"></a>
  49. <a href="/Home/Modify/@a.AId"></a>
  50. </td>
  51. </tr>
  52. }
  53. </table>

4.4  分页

  1. <div style = "margin:10px auto; text-align:center;">
  2. @Html.PagedListPager((IPagedList)ViewBag.OnePageOfProducts, page => Url.Action("Index", new { page }))
  3. </div>
  4. </body>
  5. </html>

如何使用 PagedList.Mvc 分页的更多相关文章

  1. ASP.NET MVC 4使用PagedList.Mvc分页

    ASP.NET MVC中进行分页的方式有多种,在NuGet上有提供使用PagedList.PagedList.Mvc进行分页. 1. 通过NuGet引用PagedList.Mvc 在安装引用Paged ...

  2. 再谈使用X.PagedList.Mvc 分页(ASP.NET Core 2.1)

    在以前的博文中写过使用X.PagedList.Mvc组件来对ASP.NET MVC应用程序进行分页,可以参考此篇随笔:Asp.net MVC 使用PagedList(新的已更名 为X.PagedLis ...

  3. PagedList.MVC分页

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  4. Mvc 自带分页控件PagedList.Mvc Demo示例

    添加/下载PagedList.Mvc 直接搜索mvc pagelist 就会出来.安装完成即可.在项目的packages文件夹下面就会出现PagedList.Mvc.4.5.0.0 和PagedLis ...

  5. MVC+Bootstrap+Drapper使用PagedList.Mvc支持多查询条件分页

    前几天做一个小小小项目,使用了MVC+Bootstrap,以前做分页都是异步加载Mvc部分视图的方式,因为这个是小项目,就随便一点.一般的列表页面,少不了有查询条件,下面分享下Drapper+Page ...

  6. asp.net MVC 使用PagedList.MVC实现分页

    在上一篇的EF之DB First中,存在以下的两个问题: 1. 添加/编辑页面显示的是属性名称,而非自定义的名称(如:姓名.专业...) 2. 添加/编辑时没有加入验证 另外数据展示使用分页 @Htm ...

  7. PagedList.Mvc只有一行时不显示分页

    PagedList.Mvc默认总是显示分页,可以通过设置DisplayMode在只有一行时不显示分页 @Html.PagedListPager(Model, page => Url.Action ...

  8. Asp.net MVC 使用PagedList(新的已更名 为X.PagedList.Mvc) 分页

    在asp.net mvc 中,可以bootstrap来作为界面,自己来写分页程序.也可以使用PagedList(作者已更名为 X.PagedList.Mvc)来分页. 1.首先,在NuGet程序包管理 ...

  9. MVC分页

    http://www.cnblogs.com/iamlilinfeng/p/4075292.html 目录 一.Contrl与View数据传递(多表数据) 二.分页控件介绍 三.MVC源码说明 四.源 ...

随机推荐

  1. C++ Primer 第二章 引用 指针 const限定符

    1.引用: 为对象起了另外一个名字,引用类型引用另外一种类型,通过将声明符写成&d的形式来定义引用类型,其中d也就是声明的变量名(声明符就是变量名). PS:1.通过图片中编译所提示的报错信息 ...

  2. ios 修改导航条返回按钮

    ios 修改导航条返回按钮 方式一:使用系统的:可以更改系统的文字:以及通过设置导航条的颜色来达到预期的效果 UIBarButtonItem *backBtns = [[UIBarButtonItem ...

  3. jmeter笔记4

     软件测试中使用JMeter测试Web应用 JMeter作用领域 JMeter可以用于测试静态或者动态资源的性能(文件.Servlets.Perl脚本.java对象.数据库和查询.ftp服务器或者其他 ...

  4. CentOS报错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock32 error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"

    今天安装完带图形界面的CentOS 7后,在Terminal中运行yum安装命令时报了以下错误: Could not retrieve mirrorlist http://mirrorlist.cen ...

  5. ccs6.0使用问题记录

    ccs6.0使用问题记录 彭会锋 1 编译过程中提示warning  " Description Resource Path Location Type #9-D nested commen ...

  6. cf(#div1 B. Dreamoon and Sets)(数论)

    B. Dreamoon and Sets time limit per test 1 second memory limit per test 256 megabytes input standard ...

  7. 详细解读Jquery各Ajax函数

    $.get(),$.post(),$.ajax(),$.getJSON() 一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表,callba ...

  8. 集成 AliPay - 支付宝

    作者感言 前面我已经写了一篇关于WeChat SDK的支付篇, 那我们继续研究接下来的支付SDK, 这次就是国民支付软件支付宝, 下面就让我们来看看怎么集成AliPay SDK.最后:如果你有更好的建 ...

  9. C# 通过URL获取图片并显示在PictureBox上的方法

    , ); System.Net.WebRequest webreq = System.Net.WebRequest.Create(url); System.Net.WebResponse webres ...

  10. 如何做好一位资深的web前端工程师

    Web前端开发工程师是一个很新的职业,在国内乃至国际上真正开始受到重视的时间不超过5年.Web前端开发是从网页制作演变而来的,名称上有很明 显的时代特征.在互联网的演化进程中,网页制作是Web 1.0 ...