public static PagedResponse <T> CreatePaginatedResponse(IUriService uriService, PaginationDetails paginationDetails, List <T> response) { var nextPage = paginationDetails.PageNumber >= 1 ? uriService.CreateNextPageUri(paginationDetails).ToString() : null; var previousPage = paginationDetails.PreviousPageNumber >= 0 ? uriService.CreatePreviousPageUri(paginationDetails).ToString() : null; return(new PagedResponse <T> { Data = response, PageNumber = paginationDetails.PageNumber >= 1 ? paginationDetails.PageNumber : (int?)null, PageSize = paginationDetails.PageSize >= 1 ? paginationDetails.PageSize : (int?)null, NextPage = response.Any() ? nextPage : null, PreviousPage = previousPage, Total = paginationDetails.Total }); }