在Essential C#3.0一书中,有一部分内容如下:
“使用select()方法进行投影 是非常强大的。我们已经看到了 过滤集合垂直 (减少了物品的数量 集合)使用Where()标准 查询运算符。现在,通过Select() 标准查询运算符,我们也可以 减少集合水平 (减少列数)或转换 数据完全。结合起来,
Where()和Select()提供了一种手段 仅提取片段 原始的集合是可取的 对于当前的算法。“
在这种情况下,横向和纵向意味着什么?这些方法对集合的枚举方式不同吗?
答案 0 :(得分:7)
不,他们列举了相似的收藏品。
如果您将集合视为一组对象(行),每个对象都具有一些属性(列),如数据库表。您可以通过使用Where
指定条件删除某些行(垂直)来过滤结果,或者通过Select
属性的子集删除一组列(水平)。
答案 1 :(得分:4)
描绘包含行和列的表格。行表示垂直方向,而列表示水平。从作者的句子的上下文来看,它听起来像是垂直和水平使用意味着Where()子句将减少行数(返回的结果),而Select()子句会影响列数。
有意义吗?