public async Task <ActionResult <BookRevenue[]> > GetAllBookRevenues(int pageNumber = 1, int pageSize = Data.Constants.Paging.DefaultPageSize, string sortBy = "") { EntityCollection <BookRevenue> dbBookRevenues = null; try { dbBookRevenues = await _repository.GetAllBookRevenuesAsync(pageNumber, pageSize, sortBy); } catch (ParseException ex) { return(BadRequest("Request format is invalid: " + ex.Message)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, ex)); } if (dbBookRevenues == null) { return(NotFound()); } Data.ModelObjectCollection <Data.Models.BookRevenue> BookRevenues = new ModelObjectCollection <Data.Models.BookRevenue> { TotalCount = dbBookRevenues.TotalCount, PageNumber = dbBookRevenues.PageNumber, PageSize = dbBookRevenues.PageSize, TotalPages = dbBookRevenues.TotalPages, SortBy = dbBookRevenues.SortBy, NextPageNumber = dbBookRevenues.NextPageNumber, PrevPageNumber = dbBookRevenues.PrevPageNumber, NextPageUrl = "", PrevPageUrl = "", Data = _mapper.Map <Data.Models.BookRevenue []>(dbBookRevenues.Data) }; BookRevenues.NextPageUrl = (BookRevenues.PageNumber == BookRevenues.TotalPages) ? "" : ("api/BookRevenues?pageNumber" + BookRevenues.NextPageNumber.ToString()) + "&pageSize=" + BookRevenues.PageSize.ToString() + "&sortBy=" + BookRevenues.SortBy; BookRevenues.PrevPageUrl = (BookRevenues.PageNumber == 1) ? "" : ("api/BookRevenues?pageNumber" + BookRevenues.PrevPageNumber.ToString()) + "&pageSize=" + BookRevenues.PageSize.ToString() + "&sortBy=" + BookRevenues.SortBy; return(Ok(BookRevenues)); }