码迷,mamicode.com
首页 > 其他好文 > 详细

分页类

时间:2017-12-19 01:02:40      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:returns   分页类   span   sum   分页   col   this   summary   计算   

/// <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);
        }
    }

 

分页类

标签:returns   分页类   span   sum   分页   col   this   summary   计算   

原文地址:http://www.cnblogs.com/zhshlimi/p/8058917.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!