Chr*_*ris 7 c# linq linq-to-entities entity-framework
我有一个性能问题,关于LINQ如何与foreach来自Entity Framework的可查询实体一起执行.
这样做是否更好(也更快)
foreach(var thing in myentities.GetThemAll())
Run Code Online (Sandbox Code Playgroud)
要么
foreach(var thing in myentities.GetThemAll().ToList())
Run Code Online (Sandbox Code Playgroud)
第一个例子是否实际上会导致myentities.GetThemAll().Count()(+1?)跳转到数据库,每个收集一行?
如果你只需要迭代你的元素就不要打电话,那就更好了ToList().这是因为当我们调用它时,会立即执行相应的查询,并创建内存集合中的一个.
如果不进行调用ToList,则将避免创建将保存查询结果的内存集合.
要么你按照第一种方式,要么第二种方式,你将进行一次往返数据库.
| 归档时间: |
|
| 查看次数: |
2672 次 |
| 最近记录: |