public async Task <ActionResult <Pagination <Writer> > > GetWriters([FromQuery] UserParams userParams) { var writers = new List <Writer>(); // Search by name if (userParams.nameFilter != null) { writers = await _writerRepo.ListByNameAsync(userParams); } // Return all results else { writers = await _writerRepo.ListAllAsync(userParams); } var totalCount = await _writerRepo.GetTotalCountAsync(userParams); if (writers == null) { return(NotFound(new ApiResponse(404))); } return(Ok(new Pagination <Writer>(writers, userParams.CurrentPage, totalCount, userParams.Offset))); }