public static Paginated <T> CreatePaginatedResult <T>(List <T> items, PageFilterFilled currentFilter, int totalCount) { var totalPages = decimal.ToInt32(Math.Ceiling((decimal)totalCount / currentFilter.Size)); return(new Paginated <T> { Items = items, Page = new PageInfo { Current = currentFilter, Next = currentFilter.Index >= totalPages ? null : currentFilter with { Index = currentFilter.Index + 1 },
public static IQueryable <T> Page <T>(this IQueryable <T> query, PageFilterFilled filter) { return(query.Skip((filter.Index - 1) * filter.Size).Take(filter.Size)); }