在ASP.NET MVC中,可以使用PagerOptions类来限制分页元素的数量,并使用“...”进行筛选。以下是一个示例代码:
首先,在视图中添加PagerOptions对象,并设置其相关属性:
@model PagedList.IPagedList
@{
ViewBag.Title = "Your Page";
var pagerOptions = new PagedListRenderOptions
{
DisplayLinkToFirstPage = PagedListDisplayMode.Always,
DisplayLinkToLastPage = PagedListDisplayMode.Always,
DisplayLinkToPreviousPage = PagedListDisplayMode.Always,
DisplayLinkToNextPage = PagedListDisplayMode.Always,
MaximumPageNumbersToDisplay = 5, // 设置要显示的最大页码数量
DisplayEllipsesWhenNotShowingAllPageNumbers = true // 标记是否显示“...”当没有显示所有页码时
};
}
然后,在视图中使用PagerOptions对象来呈现分页导航:
@Html.PagedListPager(Model, page => Url.Action("Index", new { page }), pagerOptions)
在上述代码中,Model
是要分页的数据模型,Index
是控制器中的分页操作方法,page
是要显示的页码。
通过设置pagerOptions
的MaximumPageNumbersToDisplay
属性,可以限制要显示的最大页码数量。通过设置DisplayEllipsesWhenNotShowingAllPageNumbers
属性为true
,可以在没有显示所有页码时添加省略号(“...”)。
这样,在有很多记录时,分页导航将只显示指定的最大页码数量,并在边缘页码之间使用省略号进行筛选。