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() }); }
public async Task <ActionResult <PaginatedResult <ListApiKeyResponseDetail> > > List([FromQuery] ListApiKeyRequest request, CancellationToken cancellationToken = default) { var apiKeys = await _mediator.Send(request, cancellationToken); return(Ok(apiKeys)); }
public async Task <IActionResult> List([FromQuery] ListApiKeyRequest request, CancellationToken cancellationToken = default) { var apiKeys = await _mediator.Send(request, cancellationToken); return(Ok(apiKeys)); }