public async Task<BrandPaginationViewModel> Handle(Query request, CancellationToken cancellationToken) { var queryable = context.Brands.AsQueryable(); int totalCount = await queryable.CountAsync(); var BrandList = await queryable.Paginate(request.pagination).ToListAsync(); if (BrandList?.Count == 0) { throw new RestException(HttpStatusCode.NotFound, new { Brands = "Not Found" }); } var rtobj = ReturnPaginationDto.GetPage(BrandList, request.pagination.Page, request.pagination.RecordsPerPage, totalCount); var BrandssToReturn = mapper.Map<PaginationViewModel<Brands>, BrandPaginationViewModel>(rtobj); return BrandssToReturn; }
public async Task <ProductPaginationViewModel> Handle(Query request, CancellationToken cancellationToken) { var queryable = context .Products .Include(x => x.Brand) .Include(x => x.Category) .AsQueryable(); int count = await queryable.CountAsync(); var products = await queryable.Paginate(request.pagination).ToListAsync(); if (products.Count == 0) { throw new RestException(HttpStatusCode.NotFound, new { product = "Not Found" }); } //jenkin9 var paginationObj = ReturnPaginationDto.GetPage(products, request.pagination.Page, request.pagination.RecordsPerPage, count); var productsToReturn = mapper.Map <PaginationViewModel <Products>, ProductPaginationViewModel>(paginationObj); return(productsToReturn); }