C# MVC分页简单介绍

摘要:
ASP。在NETMVC中有许多执行分页的方法。这里我们介绍一种简单实用的方法:首先,在实现分页之前添加两个组件“PagedList”和“PagedList.Mvc”,然后直接下载并安装到NuGet包中;(2) 分页处理。分页逻辑包括两个必要的参数:分页索引和分页条目数。然后,ToPagedList

ASP.NET MVC中进行分页的方式有多种,这里介绍一种简单实用的方法

一:在实现分页之前,先添加“PagedList”和“PagedList.Mvc”两个组件,具体下载直接在NuGet程序包里收索安装就行

C# MVC分页简单介绍第1张

二:(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 ?? 1; //每页显示多少条 int pageSize = 5; //根据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分页简单介绍第2张

免责声明:文章转载自《C# MVC分页简单介绍》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ASP.NET Core MVC基础知识laravel 基础 --内置函数下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

记录: Sql 常见分页方法总结

Sql server 2005 分页使用样例, 写下备忘。 sql 分页语句 withtblinfozero--随便取个表别名as(selectartid,arttitle,author,pubtime.pubip,--筛选的字段row_number()over(orderbyartiddesc)as'rowID'/*****row_number()函数的...

MP实战系列(十四)之分页使用

MyBatis Plus的分页,有插件式的,也有其自带了,插件需要配置,说麻烦也不是特别麻烦,不过觉得现有的MyBatis Plus足以解决,就懒得配置插件了。 MyBatis Plus的资料不算是太多,与MyBatis相比。所以将可能用到的记录下来。分页及其搜索对于web开发是非常常用的。 使用MyBatis Plus已经有5个多月,开发的效率,的确提高...

ASP.NET MVC 3.0(十六): MVC 3.0 实例系列之表格数据的分页

ASP.NET MVC 3.0(一): MVC 3.0 的新特性 摘要 ASP.NET MVC 3.0(二): MVC的概念及MVC 3.0开发环境 ASP.NET MVC 3.0(三): 初识MVC的Url映射潜规则Routing ASP.NET MVC 3.0(四): 我要MVC潜规则之配置Routing ASP.NET MVC 3.0(五): 入手C...

mybatis高级应用系列一:分页功能

Mybatis分页插件请使用这位帅哥开发的, 看起来不错.https://github.com/miemiedev/mybatis-paginator Mybatis3.0出来已有段时间了,其实自己挺喜欢这样的一个持久化框架的,因为它简单实用,学习成本低。Mybatis3.0在整体结构上和ibatis2.X差不多,改进特性如下: 1.解析xml引进了Xp...

MySQL 百万级分页优化(Mysql千万级快速分页)

以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 : SELECT * FROM table ORDER BY id LIMIT 1000, 10; 但在数据达到百万级的时候,这样写会慢死 : SELECT * FROM table ORDER BY id LIMIT 1000000, 10; 也许耗费几十秒 网上很多优化的方法是这样的: SE...

WinForm界面开发之“分页控件”

在程序中,分页总是永远的话题,因为数据总是很多很多,分页展示在程序性能和数据查看感官方面得到很好的平衡,是一种良好的编程习惯和UI设计。 Winform中的分页控件可能没有Asp.net世界中的分页控件那么丰富多彩,不过也有不少的分页控件可以采用,各个人的可能都有一些不同的东西,一些好的东西。就我而言,我希望控件能够尽可能的多一些功能,耦合性低一些,例如我...