我正在使用 Entity Framework 6处理一些 Web API 的东西,我的控制器方法之一是“ Get All”,它期望从数据库中以 IQueryable<Entity>
的形式接收表的内容。在我的存储库中,我想知道是否有任何有利的理由来异步执行此操作,因为我刚开始使用 EF 和异步。
基本上可以归结为
public async Task<IQueryable<URL>> GetAllUrlsAsync()
{
var urls = await context.Urls.ToListAsync();
return urls.AsQueryable();
}
对
public IQueryable<URL> GetAllUrls()
{
return context.Urls.AsQueryable();
}
异步版本实际上会在这里产生性能优势吗? 还是我先投射到一个 List (使用异步注意) ,然后再投射到 IQueryable 会产生不必要的开销?