如何使用 PagedList.Mvc 分页
刚开始找PagedList分页不是例子太复杂,就是写的过于简略,由于对于MVC的分页不太了解,之前使用的都是Asp.Net 第三方控件 + 数据库存储过程分页。还是老外写的例子简捷,https://github.com/TroyGoode/PagedList 。
1、本实例采用MVC + EF 框架,至于怎么配置,就不再这里说了。

2、安装 "PagedList.Mvc"的同时 “PagedList”会自动安装
路径:解决方案资源管理器 -> 选中工程名,点击右键 -> 管理NuGet程序包

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

3、在控制器HomeController.cs 中添加代码
3.1 添加命名空间
using PagedList.Mvc;
using PagedList;
3.2 在Index方法中添加代码
#region 0.7 查询文章列表--分页 + ActionResult Index()
/// <summary>
/// 查询 文章 列表 并分页
/// </summary>
/// <returns></returns>
public ActionResult Index(int?page)
{
var query = db.BlogArticles.Where(d => d.AIsDel == false).OrderByDescending(d => d.AId) ;
var pageNumber = page ?? ; // if no page was specified in the querystring, default to the first page (1)
var onePageOfProducts = query.ToPagedList(pageNumber, ); // will only contain 25 products max because of the pageSize
ViewBag.OnePageOfProducts = onePageOfProducts; return View();
}
#endregion
4、在视图Index.cshtml中添加代码
4.1 在添加代码前,现在编译一下代码,否在在视图中添加命名空间会提示”缺少引用命名空间“的语法错误,解决方案资源管理器->选中工程点击右键->重新生成
4.2 添加命名空间
@using PagedList;
@using PagedList.Mvc;
4.3 显示文章列表
<!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<link href="/Content/PagedList.css" rel="stylesheet" type="text/css" />
<style type="text/css">
#tbList
{
border:1px solid #0094ff;
border-collapse:collapse;
margin:10px auto;
width:800px;
}
#tbList th,td
{
border:1px solid #0094ff;
padding:10px;
}
</style>
<script type="text/javascript">
function del(Aid) {
if (confirm("确定要删除吗?"))
window.location = "/Home/Del/" + Aid;
}
</script>
</head>
<body>
<table id="tbList">
<tr>
<th>id</th>
<th>标题</th>
<th>分类</th>
<th>状态</th>
<th>时间</th>
<th>操作</th>
</tr>
@foreach (var a in ViewBag.OnePageOfProducts)
{
<tr>
<td>@a.AId</td>
<td>@a.ATitle</td>
<td>@a.BlogArticleCate.Name</td>
<td>@a.Enumeration.e_cname</td>
<td>@a.AAddtime</td>
<td>
<a href="javascript:del(@a.AId)">删</a>
<a href="/Home/Modify/@a.AId">改</a>
</td>
</tr>
}
</table>
4.4 分页
<div style = "margin:10px auto; text-align:center;">
@Html.PagedListPager((IPagedList)ViewBag.OnePageOfProducts, page => Url.Action("Index", new { page }))
</div>
</body>
</html>
如何使用 PagedList.Mvc 分页的更多相关文章
- ASP.NET MVC 4使用PagedList.Mvc分页
ASP.NET MVC中进行分页的方式有多种,在NuGet上有提供使用PagedList.PagedList.Mvc进行分页. 1. 通过NuGet引用PagedList.Mvc 在安装引用Paged ...
- 再谈使用X.PagedList.Mvc 分页(ASP.NET Core 2.1)
在以前的博文中写过使用X.PagedList.Mvc组件来对ASP.NET MVC应用程序进行分页,可以参考此篇随笔:Asp.net MVC 使用PagedList(新的已更名 为X.PagedLis ...
- PagedList.MVC分页
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- Mvc 自带分页控件PagedList.Mvc Demo示例
添加/下载PagedList.Mvc 直接搜索mvc pagelist 就会出来.安装完成即可.在项目的packages文件夹下面就会出现PagedList.Mvc.4.5.0.0 和PagedLis ...
- MVC+Bootstrap+Drapper使用PagedList.Mvc支持多查询条件分页
前几天做一个小小小项目,使用了MVC+Bootstrap,以前做分页都是异步加载Mvc部分视图的方式,因为这个是小项目,就随便一点.一般的列表页面,少不了有查询条件,下面分享下Drapper+Page ...
- asp.net MVC 使用PagedList.MVC实现分页
在上一篇的EF之DB First中,存在以下的两个问题: 1. 添加/编辑页面显示的是属性名称,而非自定义的名称(如:姓名.专业...) 2. 添加/编辑时没有加入验证 另外数据展示使用分页 @Htm ...
- PagedList.Mvc只有一行时不显示分页
PagedList.Mvc默认总是显示分页,可以通过设置DisplayMode在只有一行时不显示分页 @Html.PagedListPager(Model, page => Url.Action ...
- Asp.net MVC 使用PagedList(新的已更名 为X.PagedList.Mvc) 分页
在asp.net mvc 中,可以bootstrap来作为界面,自己来写分页程序.也可以使用PagedList(作者已更名为 X.PagedList.Mvc)来分页. 1.首先,在NuGet程序包管理 ...
- MVC分页
http://www.cnblogs.com/iamlilinfeng/p/4075292.html 目录 一.Contrl与View数据传递(多表数据) 二.分页控件介绍 三.MVC源码说明 四.源 ...
随机推荐
- No resource found that matches the given name 'Theme.AppCompat.Light'
eclipse在新建andorid工程的时候出现找不到AppCompat.Light主题的问题,这是因为缺少支持低版本的v7包所致, 这个不是jar包,在sdk的extras->andorid- ...
- svn 大杂烩
svn : trunk 日常开发 branch 多版开发,或者修复bug,测试 tag 开发到一阶段打一个tag,给外部使用 属性externals:可以引用外部的公共工程.这个工程最好是稳定的,不 ...
- linux笔记:权限管理命令chmod,chown,chgrp,umask
权限对文件和目录的含义是不同的:对文件来说:读:可以查看文件内容写:可以修改文件内容执行:可以执行文件对目录来说:读:可以列出目录中的内容写:可以在目录中创建.删除文件执行:可以进入目录 能够更改文件 ...
- 资源 之 4.3 访问Resource(拾壹)
4.3.1 ResourceLoader接口 ResourceLoader接口用于返回Resource对象:其实现可以看作是一个生产Resource的工厂类. public interface Re ...
- 你必须知道的28个HTML5特征、窍门和技术
注意:每周有那么几次,此列表会更新一些新的窍门,最终,本文会成为超级有用的资源.//zxx:丑话说在前头,我可没功夫更新,所以,即使到您女儿出嫁那天,本文还是28项内容 前端的发展如此之迅猛,一不留神 ...
- Ubuntu 系统下 mongodb 安装和配置
安装 MongoDB sudo apt-get install mongodb sudo apt-get install mongodb 关闭/启动 sudo service mongodb stop ...
- cf------(round)#1 C. Ancient Berland Circus(几何)
C. Ancient Berland Circus time limit per test 2 seconds memory limit per test 64 megabytes input sta ...
- 修改Window的hosts文件提示“该文件被其他程序占用”解决方案
1.打开C:\Windows\System32\drivers\etc中的hosts 2.右键——>属性——>安全 3.在修改保存就可以了
- jquery mobile 请求数据方法执行时显示加载中提示框
在jquery mobile开发中,经常需要调用ajax方法,异步获取数据,如果异步获取数据方法由于网速等等的原因,会有一个反应时间,如果能在点击按钮后数据处理期间,给一个正在加载的提示,客户体验会更 ...
- 读取Cookie及Cookie所有属性操作方法
读取Cookie及Cookie所有属性操作方法 2013-08-04 22:21:43| 分类: 技术 | 标签:cookie |举报|字号 订阅 要把Cookie发送到客户端,Servle ...