zoukankan      html  css  js  c++  java
  • IQueryable定义一个扩展方法。分页

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace page
    {
        public class PagedList<T> : List<T>
        {
            public PagedList(IEnumerable<T> content, int currentPage, int pageSize, int totalCount)
                : this(totalCount, currentPage, pageSize)
            {
                AddRange(content);
            }
            public PagedList(IQueryable<T> source, int currentPage, int pageSize)
                : this(source.Count(), currentPage, pageSize)
            {
                AddRange(source.Skip((CurrentPage - 1) * PageSize).Take(PageSize).ToList());
            }
    
            public PagedList(IEnumerable<T> source, int currentPage, int pageSize)
                : this(source.Count(), currentPage, pageSize)
            {
                AddRange(source.Skip((CurrentPage - 1) * PageSize).Take(PageSize).ToList());
            }
    
            protected PagedList(int count, int currentPage, int pageSize)
            {
                TotalCount = count;
                PageSize = Math.Max(pageSize, 1);
                CurrentPage = Math.Min(Math.Max(currentPage, 1), TotalPages);
            }
    
            public int CurrentPage { get; set; }
    
            public bool HasPreviousPage
            {
                get { return CurrentPage > 1; }
            }
    
            public bool HasNextPage
            {
                get { return CurrentPage < TotalPages; }
            }
    
            public int PageSize { get; set; }
    
            public int TotalCount { get; set; }
    
            public int TotalPages
            {
                get { return Math.Max((TotalCount + PageSize - 1) / PageSize, 1); }
            }
        }
    }
    
  • 相关阅读:
    P1171 售货员的难题--搜索(剪枝)
    逆元-P3811 【模板】乘法逆元-洛谷luogu
    gcd和exgcd和lcm
    递推
    Docker hello workd
    Docker配置文件详解
    Centos7变动
    centos7安装docker
    nginx性能调优
    nginx相关
  • 原文地址:https://www.cnblogs.com/wlwjc/p/2505427.html
Copyright © 2011-2022 走看看