使用X.PagedList.Mvc 分頁(ASP.NET Core 3.1)


直接上干貨

首先Nuget包添加引用: X.PagedList.Mvc.Core

控制器:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Dw.BLL.Article;
using Dw.Models.Article;
using Dw.Models.Other;
using Microsoft.AspNetCore.Mvc;
using X.PagedList;

namespace Dw.Histolab.Controllers
{
    public class ArticleController : Controller
    {
        private Article_CategoryBLL article_CategoryBLL = new Article_CategoryBLL();
        private Article_ContentBLL article_ContentBLL = new Article_ContentBLL();

        #region 產品列表
        /// <summary>
        /// 產品列表
        /// </summary>
        /// <param name="keyValue">類別主鍵</param>
        /// <param name="page">第幾頁</param>
        /// <param name="pageSize">每頁記錄數</param>
        /// <returns></returns>
        public IActionResult ProductList(string keyValue, int page = 1, int pageSize = 12)
        {
            var articleCategory = article_CategoryBLL.GetEntity(keyValue);
            ViewBag.CategoryName = articleCategory.Name;
            ViewBag.CategoryId = articleCategory.CategoryId;
            var articleContentList = article_ContentBLL.GetList(keyValue);
            return View(articleContentList.ToPagedList(page, pageSize));
        }
        #endregion

    }
}

視圖頁

@model X.PagedList.IPagedList<Dw.Models.Article.Article_Content>
@using X.PagedList.Mvc.Core;
@{
    ViewData["Title"] = "產品中心列表";
}
<link href="~/css/PagedList.css" rel="stylesheet" />
<div id="contentWrapper">
    <div id="contentWrap">
        <div id="content">
            <div id="prdBrand">
                <div class="bcate">產品類別:@ViewBag.CategoryName</div>
                <div class="item-wrap">
                    <div class="item-cont">
                        @foreach (var item in Model)
                        {

                            <dl class="item-list">
                                <div class="item-icon">
                                    <span class='MK-product-icons'>
                                        <img src='~/picture/2903.jpg' class='MK-product-icon-2'>
                                    </span>
                                </div>
                                <dt class="thumb">
                                    <a href="shopdetail.html">
                                        <img class="MS_prod_img_m" src="@item.PictureUrl" alt="@item.Title" title="@item.Title">
                                    </a>
                                </dt>
                                <dd>
                                    <ul>
                                        <li class="prd-name">@item.Title</li>
                                        <li class="prd-subname">@item.Summary</li>
                                    </ul>
                                </dd>
                            </dl>

                        }
                    </div>
                    <div style="text-align:center">
                        每頁 @Model.PageSize 條記錄,本頁有 @Model.Count 條記錄,共有 @Model.TotalItemCount 條記錄。第 @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) 頁,共 @Model.PageCount 頁。             
                        @Html.PagedListPager(Model, page => Url.Action("ProductList", new { page ,keyValue=ViewBag.CategoryId}))
                    </div>
                </div>
            </div>
        </div>
        <hr>
    </div>
</div>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM