using System.Linq.Expressions; namespace SqlSugar; /// /// 分页拓展类 /// public static class PagedQueryableExtensions { /// /// 分页拓展 /// /// /// /// /// public static SqlSugarPagedList ToPagedList(this ISugarQueryable entity, int pageIndex, int pageSize) where TEntity : new() { var totalCount = 0; var items = entity.ToPageList(pageIndex, pageSize, ref totalCount); var pagination = new Pagination() { CurrentPage = pageIndex, PageSize = pageSize, Total = (int)totalCount }; return new SqlSugarPagedList { pagination = pagination, list = items }; } /// /// 分页拓展 /// /// /// /// /// public static async Task> ToPagedListAsync(this ISugarQueryable entity, int pageIndex, int pageSize) where TEntity : new() { RefAsync totalCount = 0; var items = await entity.ToPageListAsync(pageIndex, pageSize, totalCount); var pagination = new Pagination() { CurrentPage = pageIndex, PageSize = pageSize, Total = (int)totalCount }; return new SqlSugarPagedList { pagination = pagination, list = items }; } /// /// 分页拓展 /// /// /// /// /// /// public static async Task> ToPagedListAsync(this ISugarQueryable entity, int pageIndex, int pageSize, Expression> expression) { RefAsync totalCount = 0; var items = await entity.ToPageListAsync(pageIndex, pageSize, totalCount, expression); var pagination = new Pagination() { CurrentPage = pageIndex, PageSize = pageSize, Total = (int)totalCount }; return new SqlSugarPagedList { pagination = pagination, list = items }; } }