using Microsoft.EntityFrameworkCore; namespace NetinaShop.Repository.Handlers.Newsletters; public class GetNewsletterMembersQueryHandler : IRequestHandler> { private readonly IRepositoryWrapper _repositoryWrapper; public GetNewsletterMembersQueryHandler(IRepositoryWrapper repositoryWrapper) { _repositoryWrapper = repositoryWrapper; } public async Task> Handle(GetNewsletterMembersQuery request, CancellationToken cancellationToken) { var dtos = await _repositoryWrapper.SetRepository() .TableNoTracking .OrderByDescending(n => n.CreatedAt) .Select(NewsletterMemberMapper.ProjectToSDto) .Skip(request.Page * 20) .Take(20) .ToListAsync(cancellationToken); return dtos; } }