public async Task<IEnumerable<TEntity>> GetAsync(Expression<Func<TEntity, bool>>? filter = null, Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>>? orderBy = null, params string[] includes)
{
var query = _dbSet.AsQueryable();
query = includes.Aggregate(query, (current, include) => current.Include(include));
if (filter != null)
query = query.Where(filter);
var result = orderBy != null ? (await orderBy(query).ToListAsync()) : (await query.ToListAsync());
return result;
}
public async Task<IEnumerable<TEntity>> GetAsync(Expression<Func<TEntity, bool>>? filter = null, Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>>? orderBy = null, params string[] includes)
{
var query = _dbSet.AsQueryable();
query = includes.Aggregate(query, (current, include) => current.Include(include));
if (filter != null)
query = query.Where(filter);
var result = orderBy != null ? (await orderBy(query).ToListAsync()) : (await query.ToListAsync());
return result;
}