public override async Task <Offer> Handle(IdQueryModel <Offer, GetOfferByIdQueryModel> query, CancellationToken cancellationToken)
        {
            Func <IQueryable <Offer>, IIncludableQueryable <Offer, object> > include = null;

            if (query.Request.IncludeBlobs)
            {
                include = q => q.Include(src => src.Blobs);
            }

            IQueryable <Offer> queryable = Repository.Filter(include: include);

            return(await queryable.SingleOrDefaultAsync(x => x.Id == query.Request.Id, cancellationToken));
        }
 public virtual async Task <TEntity> Handle(IdQueryModel <TEntity, TQueryById> query,
                                            CancellationToken cancellationToken) =>
 await Repository.GetByIdAsync(query.Request.Id);