Ejemplo n.º 1
0
        public async Task <PagedList <ProductDto> > GetProducts(PageingDto pageingDto)
        {
            var prodctDto = await _productService.GetPagedAsync(pageingDto.CurrentPage, pageingDto.PageSize);

            var dto = _mapper.Map <PagedList <Product>, PagedList <ProductDto> >(prodctDto);

            return(dto);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> List([FromBody] PageingDto pageingDto)
        {
            var pagedCategory = await _categoryService.GetPagedAsync(pageingDto.CurrentPage, pageingDto.PageSize);

            if (pagedCategory != null)
            {
                var categoryListDto = _mapper.Map <IEnumerable <CategoryDto> >(pagedCategory);
                var Pagination      = _mapper.Map <PageingDto>(pagedCategory);
                Response.PagingHeader("Pagination", Pagination);
                return(Ok(new OkApiResponse(categoryListDto)));
            }
            return(NotFound(new ApiResponse(404)));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> GetAllLanguages([FromQuery] PageingDto pageingDto)
        {
            var pagedLanguage = await _languageService.GetPagedAsync(pageingDto.CurrentPage, pageingDto.PageSize);

            if (pagedLanguage != null)
            {
                var languageDto = _mapper.Map <IEnumerable <LanguageDto> >(pagedLanguage);
                pageingDto.TotalPages  = pagedLanguage.TotalPages;
                pageingDto.TotalCount  = pagedLanguage.TotalCount;
                pageingDto.CurrentPage = pagedLanguage.CurrentPage;
                pageingDto.PageSize    = pagedLanguage.PageSize;
                Response.PagingHeader("Pagination", pageingDto);
                return(Ok(languageDto));
            }
            return(new NoContentResult());
        }
Ejemplo n.º 4
0
        public static void PagingHeader(this HttpResponse httpResponse, string headerName, PageingDto pageingDto)
        {
            var options = new JsonSerializerOptions
            {
                PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
            };
            var camecasePaging = JsonSerializer.Serialize(pageingDto, options);

            httpResponse.Headers.Add(headerName, camecasePaging);
            //httpResponse.Headers.Add("Access-Control-Allow-Credentials", new[] { "true" });
            httpResponse.Headers.Add("Access-Control-Expose-Headers", "Pagination");
        }