namespace Milimoe.FunGame.Core.Api.Utility { public static class LINQExtension { /// /// 分页查询:返回指定页码的数据 /// /// 集合元素的类型 /// 要分页的源集合 /// 页码 /// 每页显示的元素数量 /// 当前页的数据 public static IEnumerable GetPage(this IEnumerable source, int page, int pageSize) { return source.Skip((page - 1) * pageSize).Take(pageSize); } /// /// 计算总页数 /// /// 集合元素的类型 /// 源集合 /// 每页显示的元素数量(必须大于 0) /// 总页数(至少为 1) public static int MaxPage(this IEnumerable source, int pageSize) { if (pageSize <= 0) pageSize = 1; int count = source.Count(); if (count == 0) return 1; return (int)Math.Ceiling((double)count / pageSize); } } }