C# PagedList 真分页
Posted hanszimmer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# PagedList 真分页相关的知识,希望对你有一定的参考价值。
一:nuget 下载 PagedList
二:前端页面
1.需要的数据
@model PagedList.IPagedList<DeviceModel>
@using PagedList.Mvc
2.使用数据
@foreach (var item in Model)
{
<tr>
<td>@item.Name</td>
<td>@item.MAC</td>
<tr>
}
3.分页的按钮
@html.PagedListPager(Model, page => Url.Action("DeviceList", new { page }))
三:后台真分页
public ActionResult DeviceList(int page = 1)
{
var query = db.Device.OrderBy(x => x.IP).ToList();
return View(query.ToPagedList(page, 10)); //10为所要分页的条数
}
PS:若二中3的分页按钮不美观,可以新建PagedList.css文件,通过<link href="~/CSS/PagedList.css" rel="stylesheet" />来使用,内容如下
.pagination { display: inline-block; padding-left: 0; margin: 20px 0; border-radius: 4px; } .pagination > li { display: inline; } .pagination > li > a, .pagination > li > span { position: relative; float: left; padding: 6px 12px; margin-left: -1px; line-height: 1.428571429; text-decoration: none; background-color: #ffffff; border: 1px solid #dddddd; } .pagination > li:first-child > a, .pagination > li:first-child > span { margin-left: 0; border-bottom-left-radius: 4px; border-top-left-radius: 4px; } .pagination > li:last-child > a, .pagination > li:last-child > span { border-top-right-radius: 4px; border-bottom-right-radius: 4px; } .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus { background-color: #eeeeee; } .pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { z-index: 2; color: #ffffff; cursor: default; background-color: #428bca; border-color: #428bca; } .pagination > .disabled > span, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { color: #999999; cursor: not-allowed; background-color: #ffffff; border-color: #dddddd; } .pagination-lg > li > a, .pagination-lg > li > span { padding: 10px 16px; font-size: 18px; } .pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span { border-bottom-left-radius: 6px; border-top-left-radius: 6px; } .pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span { border-top-right-radius: 6px; border-bottom-right-radius: 6px; } .pagination-sm > li > a, .pagination-sm > li > span { padding: 5px 10px; font-size: 12px; } .pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span { border-bottom-left-radius: 3px; border-top-left-radius: 3px; } .pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span { border-top-right-radius: 3px; border-bottom-right-radius: 3px; } .pager { padding-left: 0; margin: 20px 0; text-align: center; list-style: none; } .pager:before, .pager:after { display: table; content: " "; } .pager:after { clear: both; } .pager:before, .pager:after { display: table; content: " "; } .pager:after { clear: both; } .pager li { display: inline; } .pager li > a, .pager li > span { display: inline-block; padding: 5px 14px; background-color: #ffffff; border: 1px solid #dddddd; border-radius: 15px; } .pager li > a:hover, .pager li > a:focus { text-decoration: none; background-color: #eeeeee; } .pager .next > a, .pager .next > span { float: right; } .pager .previous > a, .pager .previous > span { float: left; } .pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span { color: #999999; cursor: not-allowed; background-color: #ffffff; }
以上是关于C# PagedList 真分页的主要内容,如果未能解决你的问题,请参考以下文章
PagedList 使用 LINQ Skip and Take,但使用 Count of results 显示分页
使用 Google 的分页库更新 PagedList 中的单个项目
csharp 使用X.PagedList.MVC webconfig命名空间进行分页