本文介绍了"ToListAsync()"之间的区别是:和"AsAsyncEnumerable().ToList()";的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
函数需要返回 Task< List< Record>>
在这两个选项之后都返回 Task< List< Record>>
,哪个效率更高?这里有什么标准的方法吗?
Function need to return Task<List<Record>>
Following both options are returning Task<List<Record>>
, which one is more efficient? Is there any standard way here?
选项1:
Task<List<Record>> GetRecords()
{
return
DbContext.Set<Record>.Where(predicate).ToListAsync();
}
选项2:
Task<List<Record>> GetRecords()
{
return
DbContext.Set<Record>.Where(predicate).AsAsyncEnumerable().ToList();
}
推荐答案
请注意,这是.NET Core 3.x之前的版本.
在下面的@IanKemp的评论中查找更新.
Note that this is a pre .NET Core 3.x answer.
Find an update in the comment of @IanKemp here below.
选择选项1 ToListAsync
作为 AsAsyncEnumerable
的源代码明确提及
Go for option 1 ToListAsync
as the source code of AsAsyncEnumerable
explicitly mentions
官方文档提及
这篇关于"ToListAsync()"之间的区别是:和"AsAsyncEnumerable().ToList()";的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!