public async Task <IActionResult> GetAll([FromQuery] PaginationQuery paginationQuery, [FromQuery] ExerciseQuery exerciseQuery) { paginationQuery = PaginationHelper.ValidateQuery(paginationQuery); var paginationFilter = _mapper.Map <PaginationFilter>(paginationQuery); var exerciseFilter = _mapper.Map <ExerciseFilter>(exerciseQuery); var exerciseList = await _exerciseService.GetAllExercisesAsync(paginationFilter, exerciseFilter); var exerciseCount = await _exerciseService.ExercisesCountAsync(exerciseFilter); var exerciseResponse = _mapper.Map <List <ExerciseResponse> >(exerciseList); var paginatedResponse = PaginationHelper.Paginate(_uriService, paginationFilter, exerciseResponse, exerciseCount); return(Ok(paginatedResponse)); }