我正在尝试将一个简单列表中的两个字段分组:
Dim pp = From kk In e1
Group kk By key = New With {kk.enquiry_id, kk.name} Into grouping=Group
Select key, grouping.tolist, grouping.count
然而,当我pp.dump()(我正在使用LinqPad)时,每个键值在grouping.tolist中只有一个项目,grouping.count始终为1并且键是重复的。
群组中的密钥的重点不是每个密钥只返回一次所有匹配的项目吗?
答案 0 :(得分:0)
在VB.NET中,您必须指定匿名类型的键:
Dim pp = From kk In e1
Group kk By key = New With {
Key .enquiry_id = kk.enquiry_id,
Key .name = kk.name
} Into grouping = Group
Select New With {.key = key, .groupList = grouping.ToList(), .count = grouping.Count()}
更多信息:Anonymous Types (Visual Basic): Key Properties
关键属性与几个基本属性中的非关键属性不同 方式:
在C#中,匿名类型的所有属性都是自动键,您不能更改它。