ASP.NET MVC 5 集成 X.PagedList.Mvc 实现分页指南

Aria
Aria
发布时间:2026-10-14| 2人浏览过
原创

本文详细讲解如何在 ASP.NET MVC 5 项目中利用 X.PagedList.Mvc 插件快速实现数据分页功能。

安装与引用插件

首先需要在 Visual Studio 中安装 X.PagedList.Mvc 扩展包。执行以下操作:

  1. 打开 Visual Studio,进入顶部菜单栏的 工具 → NuGet 程序包管理器 → 管理解决方案的 NuGet 程序包。
  1. 在搜索框中输入 X.PagedList.Mvc,找到对应库并点击“安装”以应用至当前项目。

后端控制器处理

安装成功后,需修改控制器的业务逻辑。以 UserController.cs 为例,需要引入命名空间并使用 ToPagedList 方法将查询结果转换为分页模型。

using PagedList;

// GET: User/1
public ActionResult Index(int page = 1)
{
    const int pageSize = 10;
    
    // 获取按 ID 排序的用户列表并进行分页处理
    var iUsers = db.Users.OrderBy(p => p.Id).ToPagedList(page, pageSize);
    
    return View(iUsers);
}

前端视图展示

在对应的视图文件(如 Views\User\Index.cshtml)中渲染表格并在底部添加分页控件:

@using PagedList
@using PagedList.Mvc

<table class="table">
    
</table>


@Html.PagedListPager((IPagedList)Model, page => Url.Action("Index", new { page }))

配置路由规则

为了使分页地址能正确映射到控制器参数,需在 App_Start\RouteConfig.cs 中注册自定义路由。注意将分页参数放在 URL 路径的末尾:

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{page}", // 指定 page 为可选参数
            defaults: new { controller = "User", action = "Index", page = UrlParameter.Optional }
        );
    }
}

最终效果确认

完成上述配置并运行项目后,页面将根据设置加载指定页码的数据。点击底部的分页条,浏览器 URL 会相应变化,页面显示对应页面的用户列表信息。

常见问题排查

  • 路由未生效(404错误):检查 RouteConfig.cs 是否正确添加了包含 {page} 的路由定义,且其顺序必须在 IgnoreRoute 之后。
  • 分页样式丢失:确认已安装依赖的样式文件。如果使用的是新版 X.PagedList,可能需要手动在视图中引用相关的 CSS 文件或者查看官方文档的最新 UI 组件。
  • 命名空间报错:如果在视图中找不到 PagedListMvcHtmlString,请确保在 Razor 视图头部写入了 @using PagedList.Mvc。

以上就是关于在 ASP.NET MVC 5 中集成和使用 X.PagedList.Mvc 插件进行数据分页的详细内容,更多关于 .NET MVC 开发优化的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。