public IActionResult GetListBorrowRequest([FromQuery] BorrowRequestParameters borrowRequestParameters) { try { var borrowRequests = _repository.GetBorrowRequests(borrowRequestParameters); var metadata = new { borrowRequests.TotalCount, borrowRequests.PageSize, borrowRequests.CurrentPage, borrowRequests.TotalPages, borrowRequests.HasNext, borrowRequests.HasPrevious }; Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata)); _logger.LogInformation($"Returned {borrowRequests.TotalCount} borrowRequests from database."); return(Ok(borrowRequests)); } catch (Exception ex) { _logger.LogError($"Something went wrong inside GetList action: {ex.Message}"); return(StatusCode(500, "Internal server error")); } }
public PagedList <BorrowRequest> GetBorrowRequests(BorrowRequestParameters borrowRequestParameters) { return(PagedList <BorrowRequest> .ToPagedList(Entities .OrderBy(b => b.Id), borrowRequestParameters.PageNumber, borrowRequestParameters.PageSize)); }