public static PaginatedResult <T> Paginate <T>(this IQueryable <T> query, PaginatedConfiguration pagination) { var totalCount = query.Count(); var pageIndex = pagination.PageIndex; var countToSkip = (pageIndex < 1 ? 0 : pageIndex - 1) * pageIndex; var pageSize = pagination.PageSize; var result = query.Skip(countToSkip).Take(pageSize).ToList(); return(new PaginatedResult <T>(pageIndex, pageSize, result, totalCount)); }
public PaginatedResult <ItemViewModel> Get(PaginatedConfiguration pagination) { var items = _itemsService.GetItems(pagination); return(items); }
public IActionResult Index(PaginatedConfiguration pagination) { var result = Get(pagination); return(View(result)); }
public PaginatedResult <CustomerDTO> GetPaginated(string sortExpression, PaginatedConfiguration pagination) { AutoMapper.Mapper.CreateMap <Customer, CustomerDTO>(); return(_customersRepository.GetAll(sortExpression).ProjectTo <CustomerDTO>().Paginate(pagination)); }