标签: c# linq
可能重复: Linq: What is the difference between Select and Where
var a = Doc.Document.Where(n => n.Id == id).SingleOrDefault();
和
var b = Doc.Document.Select(n => n.Id == id).SingleOrDefault();
为什么变量b是布尔值?
对于我的无知感到抱歉,我是LINQ的新手。
答案 0 :(得分:11)
Where根据谓词过滤一系列值。因此,在第一个示例中,您将从列表中选择函数n.Id == id为真的元素。
n.Id == id
Select将序列的每个元素投影到一个新表单中,因此在第二个示例中,您将获得一个布尔值列表,这是每个元素上函数n.Id == id的结果。