Ejemplo n.º 1
0
        protected override async Task <CryptoCurrencyListQueryResponse> Run(CryptoCurrencyListQuery request, CancellationToken cancellationToken)
        {
            var result = new CryptoCurrencyListQueryResponse();

            var unitOfWork = _cryptoRepository.UnitOfWork;

            var query = _cryptoRepository.GetQueryable();

            result.TotalCount = query.Count();

            result.Entities = await query.OrderBy(x => x.CoinMarketCapId).Skip(request.Skip).Take(request.Take)
                              .Select(x => MapToResponseItem(x)).ToListAsync(cancellationToken);

            await unitOfWork.Commit(cancellationToken);

            return(result);
        }