不加tolist() 数据总数不准什么原因,加了性能影响大吗 求大神指点

独自 2017-01-06 05:37:46

不加tolist() 数据总数不准什么原因,加了性能影响大吗 求大神指点

sql 里面包含 inner jion
...全文
1538 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
路人男主 2017-04-10
  • 打赏
  • 举报
回复
有一个延迟加载性质
  • 打赏
  • 举报
回复
tolist().count()只会查一次数据库,第一个tolist是将数据读取到内存中,第二个count其实是linq2object了,不是linq2ef
正怒月神 2017-01-25
  • 打赏
  • 举报
回复
引用 6 楼 yaotomo 的回复:
[quote=引用 5 楼 hanjun0612 的回复:] count和count()有区别。
请教count和count()如何区分?我一直以为是一样的[/quote] 我之前说count和count()有区别,并不是指你的查询条数出现的问题和他们有关系。 而是 tolist().count 只会在tolist时,查询数据库。而tolist().count() 会查询2遍数据库。 所以建议你用 tolist().count
bwangel 2017-01-25
  • 打赏
  • 举报
回复
ToList()是把数据全部加载到内存。如果有一百万条数据,基本上就死机了。 Count是List自带的属性,Count()是IEnumerable接口一个扩展方法。 数据不准估计是因为数据库的数据是动态变化的,而不是Count()有BUG。
yaotomo 2017-01-25
  • 打赏
  • 举报
回复
引用 5 楼 hanjun0612 的回复:
count和count()有区别。
请教count和count()如何区分?我一直以为是一样的
EnForGrass 2017-01-10
  • 打赏
  • 举报
回复
数据量大肯定有影响啊
q107770540 2017-01-10
  • 打赏
  • 举报
回复
.ToList() 就不是Lazy load了,会立即去DB拿数据
正怒月神 2017-01-10
  • 打赏
  • 举报
回复
tolist之后,会立马加载数据。 慢不慢看你抓取的量决定 还有,建议 .tolist().Count; 而不是tolist().Count(); count和count()有区别。
  • 打赏
  • 举报
回复
很好,出了个谜语让大家猜
圣殿骑士18 2017-01-07
  • 打赏
  • 举报
回复
你去监控下两者生成的sql有什么不同就知道了吧。

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧