public Task <List <TDto> > Execute <T>(IQueryResultList <T> query) where T : class, IDomainEntity { return(QueryExecutor.Execute(() => { var queryable = query.Execute(_queryableProvider).ProjectTo <TDto>(_mapper.ConfigurationProvider); return queryable.ToListAsync(); }, _dbContext, query)); }
public Task <List <TDto> > Execute <T, TKeyBy>(IQueryResultList <T> query, Expression <Func <TDto, TKeyBy> > orderBy, SortOrder sortOrder = SortOrder.Ascending) where T : class, IDomainEntity { return(QueryExecutor.Execute(() => { var queryable = query.Execute(_queryableProvider).ProjectTo <TDto>(_mapper.ConfigurationProvider); if (sortOrder != SortOrder.Unspecified) { queryable = sortOrder == SortOrder.Descending ? queryable.OrderByDescending(orderBy) : queryable.OrderBy(orderBy); } return queryable.ToListAsync(); }, _dbContext, query)); }
public Task <List <T> > Execute <T>(IQueryResultList <T> query) where T : class, IDomainEntity { return(Execute(() => query.Execute(_queryableProvider).ToListAsync(), _dbContext, query)); }