namespace CMSMicroservice.Application.PackageCQ.Queries.GetPackage; public class GetPackageQueryHandler : IRequestHandler { private readonly IApplicationDbContext _context; public GetPackageQueryHandler(IApplicationDbContext context) { _context = context; } public async Task Handle(GetPackageQuery request, CancellationToken cancellationToken) { var response = await _context.Packages .AsNoTracking() .Where(x => x.Id == request.Id) .ProjectToType() .FirstOrDefaultAsync(cancellationToken); return response ?? throw new NotFoundException(nameof(Package), request.Id); } }