Esempio n. 1
0
        public async Task <IEnumerable <Products> > GetListAsync(PagingForm pagingForm)
        {
            var result = await _db.Products
                         .AsNoTracking()
                         .Where(u => !u.IsDeleted)
                         .Skip(pagingForm.Offset)
                         .Take(pagingForm.Limit)
                         .ToArrayAsync();

            return(result);
        }
Esempio n. 2
0
        public static IHtmlContent Paging(this IHtmlHelper helper, PagingForm form, Func <int, string> getPageFunc)
        {
            var vm = new PagingViewModel
            {
                Count  = form.Count,
                Total  = form.Total,
                GetUrl = getPageFunc,
                Offset = form.Offset
            };

            vm.Current  = form.Offset / form.Count;
            vm.LastPage = form.Total / form.Count;

            vm.Start = vm.Current - 2 > 0 ? vm.Current - 2 : 1;
            vm.Stop  = vm.Current + 2 < vm.LastPage ? vm.Current + 2 : vm.LastPage;

            return(helper.Partial("~/Views/Shared/Paging.cshtml", vm));
        }
Esempio n. 3
0
        public async Task <IEnumerable <ProductDto> > GetListAsync(PagingForm pagingForm)
        {
            var products = await _productsRepository.GetListAsync(pagingForm);

            return(products.Select(_mapper.Map <ProductDto>));
        }
Esempio n. 4
0
        public async Task <IActionResult> GetProducts(PagingForm pagingForm)
        {
            var result = await _products.GetListAsync(pagingForm);

            return(Ok(result));
        }