public PaginatedList(List <T> items, int count, QPage qPage) { QPage = qPage; TotalPages = (int)Math.Ceiling(count / (double)QPage.PageSize); Items = new List <T>(items); }
public static async Task <PaginatedList <T> > CreateAsync(IQueryable <T> source, QPage qPage) { var count = await source.CountAsync(); var items = await source.Skip((qPage.Page - 1) *qPage.PageSize).Take(qPage.PageSize).ToListAsync(); return(new PaginatedList <T>(items, count, qPage)); }