src/Library/NetPro.Web.Api/Models/PagedList.cs

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System.Collections.Generic;
using System.Linq;

namespace System.NetPro
{
    /// <summary>
    /// 分页实现
    /// </summary>
    /// <typeparam name="T">The type of the data to page</typeparam>
    public class PagedList<T>
    {
        /// <summary>
        /// 页码
        /// </summary>
        /// <value>The index of the page.</value>
        public int PageIndex { get; set; }
        /// <summary>
        /// 每页数量
        /// </summary>
        /// <value>The size of the page.</value>
        public int PageSize { get; set; }
        /// <summary>
        /// 总条数
        /// </summary>
        /// <value>The total count.</value>
        public long TotalCount { get; set; }
        /// <summary>
        /// 总页数
        /// </summary>
        /// <value>The total pages.</value>
        public int TotalPages { get; set; }
        /// <summary>
        /// 起始页码数
        /// </summary>
        /// <value>The index from.</value>
        public int IndexFrom { get; set; }

        /// <summary>
        /// 子集合
        /// </summary>
        /// <value>The items.</value>
        public IList<T> Items { get; set; }

        /// <summary>
        /// 初始化分页的新实例
        /// </summary>
        /// <param name="source">数据源.</param>
        /// <param name="pageIndex">当前页码.</param>
        /// <param name="pageSize">显示条数</param>
        ///  <param name="totalCount">总数</param>
        /// <param name="indexFrom">起始页码.</param>
        public PagedList(IEnumerable<T> source, int pageIndex, int pageSize, long totalCount = 0, int indexFrom = 1)
        {
            if (indexFrom > pageIndex)
            {
                throw new ArgumentException($"indexFrom: {indexFrom} > pageIndex: {pageIndex}, must indexFrom <= pageIndex");
            }

            if (source is IQueryable<T> querable)
            {
后面还有 23 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。