Пример #1
0
        public async Task <ApiResult> GetPagedAsync(CoursesPagination coursesPagination)
        {
            var amount = await courses.GetCountAsync();

            var pagination = new Pagination();

            pagination.SetDefaults(amount, pageSize: 8);

            coursesPagination.Pagination ??= pagination;

            var skip = coursesPagination.Pagination
                       .GetSkip();

            var take = coursesPagination.Pagination
                       .GetTake();

            var coursesData = await courses.GetPortion(skip, take)
                              .ToArrayAsync();

            var models = mapperWrapper.MapModels(coursesData);

            imageWorker.SetCoursesImages(models);

            var data = new { pagination = coursesPagination.Pagination, courses = models };

            var result = ApiResult.GetOkResult(ApiResultStatus.Ok, data: data);

            return(result);
        }
Пример #2
0
        public async Task <IActionResult> GetPaged([FromBody] CoursesPagination coursesPagination)
        {
            var result = await coursesService.GetPagedAsync(coursesPagination);

            return(this.GetActionResult(result, logger));
        }