示例#1
0
        public async Task <IActionResult> Search(int pageNumber, int onPage)
        {
            var paginationPattern = new AvailableTariffForUpgradePaginationPattern
            {
                PageNumber = pageNumber,
                OnPage     = onPage
            };
            PaginationResult <AvailableTariffForUpgrade> searchResult = await availableTariffForUpgradeRepository.Serach(paginationPattern);

            return(Ok(new PaginationResult <AvailableTariffForUpgradeDto>
            {
                Items = searchResult.Items.Map(),
                TotalCount = searchResult.TotalCount,
            }));
        }
        public async Task <PaginationResult <AvailableTariffForUpgrade> > Serach(AvailableTariffForUpgradePaginationPattern searchPattern)
        {
            IQueryable <AvailableTariffForUpgrade> query = _ctx.AvailableTariffForUpgrades.AsQueryable();

            int totalCount = query.Count();

            query = query.OrderByDescending(x => x.Id);

            query = query.Skip(searchPattern.Skip()).Take(searchPattern.Take());

            return(new PaginationResult <AvailableTariffForUpgrade>
            {
                Items = await query.ToListAsync(),
                TotalCount = totalCount
            });
        }