コード例 #1
0
        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));
        }