LINQ及EntityFramework何时从数据库返回数据,备忘

Generally speaking, LINQ queries are executed when the application code processes
data (for instance, using a foreach or a for) or when certain methods are invoked
(ToList, ToArray, First, Single, and so on).

 下面的方法将会查询两次数据库:

复制代码
var result = LINQToEntitiesQuery;
foreach(var o in result)
{
...
}

foreach(var o in result)
{
...
}
复制代码

为了避免这种情况引起的性能问题,这种情况下需要将数据提前ToList(),代码如下:

复制代码
var orders = LINQToEntitiesQuery.ToList();
foreach(var o in orders)
{
...
}
foreach(var o in orders)
{
...
}
复制代码

 

posted on   空明流光  阅读(266)  评论(0)    收藏  举报

编辑推荐:
· SQL Server 2025 中的改进
· 当数据爆炸遇上SQL Server:优化策略全链路解析
· 记录一次线上问题排查:JDK序列化问题
· 微服务之间有哪些调用方式?
· 记一次SQL隐式转换导致精度丢失问题的排查
阅读排行:
· DeepSeek又在节前放大招!
· 分享5款开源、美观的 WinForm UI 控件库
· 领域驱动的事实与谬误 一 DDD 与 MVC
· 从零到一搭建一个前端工具函数库
· 4种插值算法

导航

< 2025年5月 >
27 28 29 30 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
1 2 3 4 5 6 7
点击右上角即可分享
微信分享提示