namespace CMSMicroservice.Application.UserCartsCQ.Queries.GetUserCarts; public class GetUserCartsQueryHandler : IRequestHandler { private readonly IApplicationDbContext _context; public GetUserCartsQueryHandler(IApplicationDbContext context) { _context = context; } public async Task Handle(GetUserCartsQuery request, CancellationToken cancellationToken) { var response = await _context.UserCarts .AsNoTracking() .Where(x => x.Id == request.Id) .ProjectToType() .FirstOrDefaultAsync(cancellationToken); return response ?? throw new NotFoundException(nameof(UserCart), request.Id); } }