我有这个问题
from a in objects
where a.property1 == 2
&& a.property2 == 3
select a
和
from a in objects
where a.property1 == 2
where a.property2 == 3
select a
我想知道语句的执行方式是否有任何真正的区别,以及使用其中任何一个的好处是什么
截至目前,我的问题是关于 linq to objects
最佳答案
您的第一个案例将转换为:
objects.Where(a => a.property1 == 2 && a.property2 == 3);
而后者将转换为:
objects.Where(a => a.property1 == 2).Where(a => a.property2 == 3);
不同之处在于后者将被过滤两次,而第一个在 lambda 中进行比较。
这是假设 LINQ-to-Objects;其他提供商将取决于实现情况。
关于c# - linq中的 "and"和 "wheres"之间有什么真正的区别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15556672/