EF Core 中存储库实现的正确方法是什么?
public IAsyncEnumerable<Order> GetOrder(int orderId)
{
return blablabla.AsAsyncEnumerable();
}
Run Code Online (Sandbox Code Playgroud)
或者
public Task<IEnumerable<Order>> GetOrder(int orderId)
{
return blablabla.ToListAsync();
}
Run Code Online (Sandbox Code Playgroud)
打电话是否明智AsAsyncEnumerable()
?这种方法安全吗?一方面它不会创建List<T>
对象,所以它应该稍微快一些。但从订单角度来看,查询并未具体化,因此我们推迟了 SQL 执行,同时结果可能会发生变化。