public Pagination(IPagingContextAspect pagingContext, IPagedResultsAspect totalResults) { this.Pages = new List <Page>(); if (pagingContext == null) { return; } if (totalResults == null || totalResults.ResultsTotal <= 0) { return; } var totalNumberPages = TotalNumberOfPages(totalResults.ResultsTotal, pagingContext.PageSize.Value); SetPages(pagingContext, totalNumberPages); HasPreviousPage = pagingContext.PageNumber.Value > 1; HasNextPage = pagingContext.PageNumber.Value < totalNumberPages; PreviousPageLink = pagingContext.AsNameValueCollection() .SetKey(Constants.SearchContext.Keys.PageNumber, pagingContext.PageNumber.Value - 1) .ToQueryString(true); NextPageLink = pagingContext.AsNameValueCollection() .SetKey(Constants.SearchContext.Keys.PageNumber, pagingContext.PageNumber.Value + 1) .ToQueryString(true); }
private void AddPage(int pageNumber, IPagingContextAspect pagingContext) { Pages.Add(new Page(pageNumber, pagingContext.PageNumber.Value == pageNumber, pagingContext.AsNameValueCollection().SetKey(Constants.SearchContext.Keys.PageNumber, pageNumber).ToQueryString(true))); }