源码

LINQ查询什么时候去数据库?


我担心,当我真正想要的只是嵌套选择语句的SQL等效项时,此LINQ调用实际上会两次访问数据库(一次是Contains,一次是ToList):

var query1 = from y in e.cities where y.zip=12345 select y.Id;
var query2 = from x in e.users where query1.Contains(x.cityId) select x;
List result = query2.ToList();

重点是:如果这是两次访问数据库,该如何避免呢?我如何拥有这样的嵌套选择语句,该语句仅一次执行一次查询? Query1只会返回1或0行.必须有比使用“包含”更好的方法.

(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/linqchaxunshenmeshihouqushujuku.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:11月 12, 2019 at 03:17 上午

热评文章