一: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; }