Пример #1
0
        public async Task <PaginatedResult <ListApiKeyResponseDetail> > Handle(ListApiKeyRequest request, CancellationToken cancellationToken)
        {
            var total = await _storeDbContext
                        .ApiKeys
                        .Where(key => key.ValidTo >= DateTime.UtcNow)
                        .CountAsync(cancellationToken);

            var apiKeys = await _storeDbContext
                          .ApiKeys
                          .Where(key => key.ValidTo >= DateTime.UtcNow)
                          .OrderBy(key => key.Name)
                          .Skip(request.PageIndex * request.PageCount)
                          .Take(request.PageCount)
                          .ToListAsync(cancellationToken);

            return(new PaginatedResult <ListApiKeyResponseDetail>()
            {
                Count = apiKeys.Count,
                Total = total,
                PageIndex = request.PageIndex,
                Items = apiKeys.Select(ak => new ListApiKeyResponseDetail
                {
                    Name = ak.Name,
                    ValidTo = ak.ValidTo,
                }).ToList()
            });
        }
Пример #2
0
        public async Task <ActionResult <PaginatedResult <ListApiKeyResponseDetail> > > List([FromQuery] ListApiKeyRequest request, CancellationToken cancellationToken = default)
        {
            var apiKeys = await _mediator.Send(request, cancellationToken);

            return(Ok(apiKeys));
        }
Пример #3
0
        public async Task <IActionResult> List([FromQuery] ListApiKeyRequest request, CancellationToken cancellationToken = default)
        {
            var apiKeys = await _mediator.Send(request, cancellationToken);

            return(Ok(apiKeys));
        }