public override async Task <IEnumerable <I> > QueryAllAsync(string predicate) { var result = new List <E>(); var query = await OneEntityController.QueryAllAsync(predicate).ConfigureAwait(false); foreach (var item in query) { E entity = new E(); entity.OneItem.CopyProperties(item); await LoadDetailsAsync(entity, item.Id).ConfigureAwait(false); result.Add(entity); } return(await BeforeReturnAsync(result).ConfigureAwait(false)); }
public virtual Task <IQueryable <I> > QueryAllAsync(string predicate) { return(Task.Run(async() => { List <I> result = new List <I>(); foreach (var item in (await OneEntityController.QueryAllAsync(predicate).ConfigureAwait(false)).ToList()) { E entity = new E(); entity.FirstItem.CopyProperties(item); await LoadDetailsAsync(entity, item.Id).ConfigureAwait(false); result.Add(entity); } return result.AsQueryable(); })); }