Api/Netina.Repository/Handlers/Customers/GetCustomersQueryHandler.cs

16 lines
615 B
C#

namespace Netina.Repository.Handlers.Customers;
public class GetCustomersQueryHandler(IRepositoryWrapper repositoryWrapper) : IRequestHandler<GetCustomersQuery,List<CustomerSDto>>
{
public async Task<List<CustomerSDto>> Handle(GetCustomersQuery request, CancellationToken cancellationToken)
{
var response = await repositoryWrapper.SetRepository<Customer>()
.TableNoTracking
.Skip(request.Page * request.Count)
.Take(request.Page)
.Select(CustomerMapper.ProjectToSDto)
.ToListAsync(cancellationToken);
return response;
}
}