C# 简单分页 演示

static void Main(string[] args)
        {
            int pageCount;
            for (int i = 1; i < 5; i++)
            {
                List<int> lists = Program.GetHotelCommentList(i, out pageCount);
                Console.WriteLine("共八页"+pageCount.ToString() + "第" + i.ToString() + "页 \n");
                for (int j = 0; j < lists.Count; j++)
                {
                    Console.WriteLine(lists[j].ToString() + "\t");
                }
                Console.WriteLine("\n");
            }
            Console.Read();
        }
        public static List<int> GetHotelCommentList(int pageIndex, out int pageCount)
        {
            int[] test = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 };
            var list = new List<int>();
            list = test.ToList();
            pageCount = 0;
            int pageSize = 4; //每页显示四条数据
            //获取总页数
            pageCount = list.Count % pageSize == 0 ? ((list.Count - pageSize >= 0 ? (list.Count / pageSize) : (list.Count == 0 ? 0 : 1))) : list.Count / pageSize + 1;
            //这个list 就是取到10条数据
            //Skip跳过序列中指定数量的元素,然后返回剩余的元素。
            //Take序列的开头返回指定数量的连续元素。
            list = list.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList(); //假设当前页为第三页。这么这里就是跳过 10*(3-1) 即跳过20条数据,Take(pageSize)的意思是:取10条数据,既然前面已经跳过前20条数据了,那么这里就是从21条开始,取10条咯
            return list;
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值