【发布时间】:2015-07-23 09:49:21
【问题描述】:
我有以下代码(来自上一个问题),用于从数据表中获取 ParentID 的列表和计数;
var results = dt.AsEnumerable()
.GroupBy(x => x.Field<int>("ParentID"))
.Select(x => new { ParentID = x.Key, Count = x.Count() })
.ToList();
这很好用,现在,我还想列出同一个表中名为“DocumentName”的另一列,作为结果查询的一部分,保持 ParentID 的计数,但不确定如何更改代码。
【问题讨论】:
-
您正在按
ParentID外键对行进行分组。每个ParentID的DocumentName是否唯一?如果没有,您需要在该字段上使用聚合函数。 -
感谢 Amir,每个“ParentID”的 DocumentName 都是唯一的
-
为了澄清您希望 DocumentName 与 ParentID 一起出现在键中,因此它将是多个键
-
让您将 DocumentName 作为另一列,或者将其作为 Key 包含在内,或者您将在最终结果中获得其类型的 List,因为它将被分组结果
-
DocumentName 是一个整数字段,这个设计很奇怪