• 分页类


    /// <summary>
        /// 分页列表类
        /// </summary>
        public class PagedList<T>
        {
            /// <summary>
            /// 每页页面大小
            /// </summary>
            public int PageSize { get; private set; }
    
            /// <summary>
            /// 页面总数
            /// </summary>
            public int TotalCount { get; private set; }
    
            /// <summary>
            /// 首页页面Index
            /// </summary>
            public IEnumerable<T> Items { get; private set; }
    
            /// <summary>
            /// .ctor
            /// </summary>
            /// <param name="items">总列表</param>
            /// <param name="pageSize">每页大小</param>
            public PagedList(IEnumerable<T> items, int pageSize)
            {
                PageSize = pageSize;
                TotalCount = items.Count();
                Items = items;
            }
    
            /// <summary>
            /// 总页面数
            /// </summary>
            public int PageCount
            {
                get { return TotalCount % PageSize == 0 ? TotalCount / PageSize : TotalCount / PageSize + 1; }
            }
    
            /// <summary>
            /// 根据页面索引计算当前页在列表中的区间上限
            /// </summary>
            /// <param name="pageIndex"></param>
            /// <returns></returns>
            public int GetStartIndex(int pageIndex)
            {
                return (pageIndex - 1) * PageSize + 1;
            }
    
            /// <summary>
            /// 根据页面索引计算当前页在列表中的区间下限
            /// </summary>
            /// <param name="pageIndex"></param>
            /// <returns></returns>
            public int GetEndIndex(int pageIndex)
            {
                return (pageIndex * PageSize);
            }
    
            /// <summary>
            /// 根据页面索引获得列表中对应的数据
            /// </summary>
            /// <param name="pageIdx"></param>
            /// <returns></returns>
            public IEnumerable<T> SubItems(int pageIdx)
            {
                return this.Items.Skip(GetStartIndex(pageIdx)-1).Take(PageSize);
            }
        }
  • 相关阅读:
    如何在同一窗口打开多个终端并实现快捷键切换
    Django基础八之cookie和session
    jQuery操作cookie
    Django基础九之中间件
    Django基础七之Ajax
    Mac下打开/usr/local目录
    Django基础二之URL路由系统
    json path espressions的语法学习
    如何查看bug属于前端还是后端
    python random生成随机手机号
  • 原文地址:https://www.cnblogs.com/zhshlimi/p/8058917.html
Copyright © 2020-2023  润新知