MvcPager是一款轻量且功能完善的分页控件,在ASP.NET MVC项目中可以快速实现数据的分页展示,支持自定义分页样式、异步分页等多种功能,下面通过完整实例演示其具体使用方法。

环境准备
首先需要在项目中引入MvcPager的相关依赖,可以通过NuGet包管理器搜索Webdiyer.MvcPager进行安装,安装完成后会在项目中自动添加对应的程序集引用,无需额外手动配置引用路径。
后端控制器编写
在控制器中需要处理分页逻辑,接收分页参数并返回分页后的数据,同时需要引用Webdiyer.WebControls.Mvc命名空间,具体代码如下:
using System.Collections.Generic;
using System.Web.Mvc;
using Webdiyer.WebControls.Mvc;
namespace MvcPagerDemo.Controllers
{
public class UserController : Controller
{
// 模拟用户数据
private List<string> GetAllUsers()
{
List<string> users = new List<string>();
for (int i = 1; i <= 50; i++)
{
users.Add($"用户{i}");
}
return users;
}
public ActionResult Index(int pageIndex = 1)
{
// 每页显示10条数据
int pageSize = 10;
// 获取所有用户数据
var allUsers = GetAllUsers();
// 分页处理,ToPagedList是MvcPager提供的扩展方法
var pagedUsers = allUsers.ToPagedList(pageIndex, pageSize);
// 将分页数据传递到视图
return View(pagedUsers);
}
}
}
前端视图配置
视图中需要引入MvcPager的分页扩展方法,然后展示分页数据和分页控件,具体代码如下:
@model PagedList<string>
@using Webdiyer.WebControls.Mvc
<!DOCTYPE html>
<html>
<head>
<title>MvcPager分页实例</title>
<style>
.pager { margin: 20px 0; }
.pager a, .pager span { margin: 0 5px; padding: 5px 10px; border: 1px solid #ccc; text-decoration: none; }
.pager .current { background-color: #007bff; color: #fff; border-color: #007bff; }
</style>
</head>
<body>
<h2>用户列表</h2>
<ul>
@foreach (var item in Model)
{
<li>@item</li>
}
</ul>
<div class="pager">
@* 使用MvcPager的Html扩展方法生成分页控件 *@
@Html.Pager(Model, new PagerOptions
{
PageIndexParameterName = "pageIndex", // 分页参数的名称,需要和控制器接收的参数名一致
FirstPageText = "首页",
PrevPageText = "上一页",
NextPageText = "下一页",
LastPageText = "末页",
ContainerTagName = "div",
CssClass = "pager",
CurrentPagerItemWrapperFormatString = "<span class="current">{0}</span>"
})
</div>
</body>
</html>
常见配置说明
在使用MvcPager时,可以通过PagerOptions配置多个参数,常用的配置项如下:
- PageIndexParameterName:指定分页参数的名称,需要和控制器中接收的参数名保持一致,默认是page。
- PageSize:设置每页显示的数据条数,也可以在后端处理分页时直接指定。
- TotalItemCount:设置总数据条数,如果是自定义数据源可以手动指定,使用ToPagedList方法时会自动计算。
- AlwaysShowFirstLastPage:设置是否始终显示首页和末页按钮,默认是true。
注意事项
如果项目中使用异步分页,需要在视图中引入MvcPager对应的JavaScript文件,并且分页控件的容器需要正确配置,避免分页点击后页面整体刷新。另外分页参数的名称必须前后端保持一致,否则会出现分页参数接收不到的问题,导致分页功能无法正常工作。
MvcPagerASP.NET_MVC分页控件分页实例修改时间:2026-07-18 22:54:10