Я пишу небольшой метод-оболочку для EF Core DbSet
. У меня есть следующий метод:
public Task<IList<TEntity>> GetAsync(Func<IQueryable<TEntity>, IQueryable<TEntity>> getFunction)
{
if (getFunction == null)
{
Task.FromResult(new List<TEntity>());
}
return getFunction(_dbSet).AsNoTracking().ToListAsync();
}
Класс, как вы можете видеть, является универсальным, и _dbSet является экземпляром конкретного DbSet
из контекста. Однако для вопроса это не имеет большого значения.
Для кода я получаю следующую ошибку:
[CS0029] Не удается неявно преобразовать тип
'System.Threading.Tasks.Task>'
в
'System.Threading.Tasks.Task>'
Если я изменю возвращаемое значение на Task<List<TEntity>>
, ошибки не будет.
У кого-нибудь есть идея, почему он не может ее преобразовать? Спасибо!