C# MVC分页简单介绍
ASP.NET MVC中进行分页的方式有多种,这里介绍一种简单实用的方法
一:在实现分页之前,先添加“PagedList”和“PagedList.Mvc”两个组件,具体下载直接在NuGet程序包里收索安装就行

二:(1)数据源,实现分页的前提除了必要组件我们还要有数据源,我这里是直接从数据库里获取的数据;
(2)分页处理,分页逻辑中有分页索引,分页条数两个必要参数,然后通过ToPagedList扩展方法进行分页;
(3)将分页数据传给View
以下是实现代码
Controller类:
using PagedList;
public class UserInfoController : Controller
{
//数据源
private testEntities db = new testEntities(); // GET: Userinfo
public ActionResult Index(int? page)
{
var userList = from s in db.userInfo select s;
//第几页
int pageNumber = page ?? ; //每页显示多少条
int pageSize = ; //根据ID升序排序
userList = userList.OrderBy(x => x.userId); //通过ToPagedList扩展方法进行分页
IPagedList<userInfo> userPagedList = userList.ToPagedList(pageNumber, pageSize); //将分页处理后的列表传给View
return View(userPagedList); //return View(db.userInfo.ToList());
}
}
页面View
@model PagedList.IPagedList<WebMvcDemo.Models.userInfo>
@using PagedList.Mvc; @{
ViewBag.Title = "Index";
}
<div class="container">
<h2>用户列表</h2> <table class="table">
<tr>
<th>
姓名
</th>
<th>
年龄
</th>
<th>
性别
</th>
<th></th>
</tr> @foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.userName)
</td>
<td>
@Html.DisplayFor(modelItem => item.userAge)
</td>
<td>
@Html.DisplayFor(modelItem => item.userSender)
</td>
<td>
@Html.ActionLink("编辑", "Edit", new { id = item.userId }) |
@Html.ActionLink("详情", "Details", new { id = item.userId }) |
@Html.ActionLink("删除", "Delete", new { id = item.userId })
</td>
</tr>
}
</table> </div>
<div>
@*分页主要代码*@
每页 @Model.PageSize 条记录,共 @Model.PageCount 页,当前第 @Model.PageNumber 页
@Html.PagedListPager(Model, page => Url.Action("Index", new { page }))
</div>
效果图

C# MVC分页简单介绍的更多相关文章
- 转载 mvc:message-converters简单介绍 https://www.cnblogs.com/liaojie970/p/7736098.html
mvc:message-converters简单介绍 说说@ResponseBody注解,很明显这个注解就是将方法的返回值作为reponse的body部分.我们进一步分析下这个过程涉及到的内容,首先就 ...
- MVC模式简单介绍
模型-视图-控件(model-View-Controller)MVC结构是一种开发模块的方法,它将数据存储和数据处理从数据的可视化表示中分离出来.存储和处理数据的组件称为模型,它包括模块的实际内容.表 ...
- ASP.NET,什么是MVC,MVC的简单介绍
什么是MVC模式 MVC(Model-View-Controller,模型—视图—控制器模式)用于表示一种软件架构模式.它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Co ...
- mvc:message-converters简单介绍
说说@ResponseBody注解,很明显这个注解就是将方法的返回值作为reponse的body部分.我们进一步分析下这个过程涉及到的内容,首先就是方法返回的类型,可以是字节数组.字符串.对象引用等, ...
- Node.js简单介绍并实现一个简单的Web MVC框架
编号:1018时间:2016年6月13日16:06:41功能:Node.js简单介绍并实现一个简单的Web MVC框架URL :https://cnodejs.org/topic/4f16442cca ...
- ASP.NET MVC 简单介绍①
ASP.NET MVC 简单介绍① 只做了重要描述,内容出自菜鸟教程网站内容. 目录 1布局 2HTML 帮助器 3.Razor 语法 4.添加样式 5.Layout 6. Controllers ...
- Mvc分页组件MvcSimplePager代码重构
1 Mvc分页组件MvcSimplePager代码重构 1.1 Intro 1.2 MvcSimplePager 代码优化 1.3 MvcSimplePager 使用 1.4 End Mvc分页组件M ...
- Mvc分页组件MvcSimplePager代码重构及使用
1 Mvc分页组件MvcSimplePager代码重构 1.1 Intro 1.2 MvcSimplePager 代码优化 1.3 MvcSimplePager 使用 1.4 End Mvc分页组件M ...
- MVC分页
http://www.cnblogs.com/iamlilinfeng/p/4075292.html 目录 一.Contrl与View数据传递(多表数据) 二.分页控件介绍 三.MVC源码说明 四.源 ...
随机推荐
- Fiddler-抓取手机app请求
如何使用 Fiddler 抓取手机app请求? 前提:手机和电脑在同一局域网 1.设置 Fiddler>Tools>Options>Connections 勾选 Allow remo ...
- Tire树的学习
Tire树是一种基于空间换时间思想的,应用于字符串处理的数据结构. 题目地址 分析:设DP数组Can[MaxL],Can[i]=1表示第i位可以理解. 当Can[i]==1,对第i+1位进行匹配,若能 ...
- Autoit 实现word拆分页解析 (python同理)
Autoit 实现word拆分页解析 (python同理) 背景 之前一直在做相关工作,由于没有找到解决最佳解决方案,老办法思路是 python先将word 转成pdf,按照页码 提取文字,从而实现w ...
- 使用FreeCookies 控制浏览器cookies及修改http响应内容
FreeCookies 插件安装 :您的计算机需要已经安装Fiddler (如未安装,请至官网下载安装 http://docs.telerik.com/fiddler/configure-fiddle ...
- JS中各种宽度距离小结
js中获取各种宽度和距离,常常让我们混淆,各种浏览器的不兼容让我们很头疼,现在就在说说js中有哪些宽度和距离. 1.名词解释 screen:屏幕.这一类取到的是关于屏幕的宽度和距离,与浏览器无关,应该 ...
- Mybatis中接口和对应的mapper文件命名为什么需要一样?
背景: 自己对于Mybatis现阶段只处于会用的阶段,有些问题,自己还是想深入的了解一下.就拿Mybatis的接口文件和mapper文件命名需要一致来开始. 解决: 当我们将接口和mapper文件放在 ...
- dataTables 插件学习整理
在项目中使用了dataTables 插件,学习整理一下. dataTables 的官方中文网站 http://www.datatables.club 引入文件: 所有的都要引入 jq文件 1. dat ...
- 内存泄漏(Memory Leak)
什么情况下会导致内存泄露(Memory Leak)? Android 的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M.因此我们所能利用 的内存空间是有限的.如果我们的 ...
- matplotlib设置中文标签
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['SimHei']
- chrome主页篡改解决方法
网上有一个超级细致的小白教学连接,但是发现很难找到,分享一下:https://arlenluo.github.io./2017/03/12/DefeatYourBrowser 还有一种情况是要打开 & ...