You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iot/projects/Infrastructure/Views/Shared/_Paged.cshtml

32 lines
1.8 KiB

@model Infrastructure.Application.IPagedList
@{
var links = Model.GetPageIndexs();
var url = Url.Content("~") + this.Context.Request.Path + this.Context.Request.QueryString;
var pageIndexParam = "PageIndex";
var empty = "javascript:;";
var firstUrl = url.RemoveParam(pageIndexParam);
var prevUrl = Model.PageIndex - 1 >= 1 ? url.SetParam(pageIndexParam, Model.PageIndex - 1) : empty;
var lastUrl = Model.TotalCount > 0 ? url.SetParam(pageIndexParam, Model.PageCount()) : empty;
var nextUrl = Model.PageIndex + 1 <= Model.PageCount() ? url.SetParam(pageIndexParam, Model.PageIndex + 1) : empty;
<ul class="pagination pagination-sm m-0 float-right">
<li class="page-item"><a class="page-link" href="@firstUrl">首页</a></li>
<li class="page-item"><a class="page-link" href="@prevUrl">上一页</a></li>
@foreach (var item in links)
{
if (item == Model.PageIndex)
{
<li class="page-item active"><a class="page-link" href="@(item==1?firstUrl:url.SetParam(pageIndexParam,item))">@item</a></li>
}
else
{
<li class="page-item"><a class="page-link" href="@url.SetParam(pageIndexParam,item)">@item</a></li>
}
}
<li class="page-item"><a class="page-link" href="@nextUrl">下一页</a></li>
<li class="page-item"><a class="page-link" href="@lastUrl">末页</a></li>
<li class="page-item"><a class="page-link" href="javascript:;">@Model.PageIndex / @Model.PageCount()</a></li>
<li class="page-item">
@Html.DropDownListFor(o => Model.PageSize, Model.GetPageSizes().Select(o => new SelectListItem { Text = o.ToString(), Value = o.ToString() }), new { @class = "page-link" })
</li>
</ul>
}