为什么我不能等待System.Linq.IQueryable

时间:2015-09-22 15:55:17

标签: c# entity-framework linq asynchronous entity-framework-6

我有以下存储库方法: -

  public  IQueryable<TSet> getAllScanEmailTo()
        {
         return   t.TSets.Where(a=>a.Name.StartsWith("ScanEmail"));

        }

被称为如下: -

var emailsTo = repository.getAllScanEmailTo().ToList();

现在我尝试将上面的内容更改为使用异步,所以我修改了我的存储库方法如下: -

 public async Task<  IQueryable<TSet>> getAllScanEmailTo()
        {
         return  await t.TSets.Where(a=>a.Name.StartsWith("ScanEmail"));

        }

但我收到以下错误: -

Error   1   Cannot await 'System.Linq.IQueryable<Final.Models.TSet>'

1 个答案:

答案 0 :(得分:7)

由于您提到使用的是EF6,因此可以使用.ToListAsync()。然后你可以await就可以了。