我正在尝试使用 LINQ 查询来确定我拥有的每种特定对象类型的数量,并将这些值记录到匿名类型中。
假设我有一些看起来像这样的数据(确实有对象暴露了这个属性,但它的工作原理是一样的)
GroupId
1
1
2
2
2
3
我知道如何在 SQL 中格式化我的查询。它会是这样的:
SELECT grp = GroupId, cnt = COUNT(*)
FROM myTable
GROUP BY GroupId
在这种情况下,输出将类似于SQL Fiddle:
GroupID Count
1 2
2 3
3 1
如何在 vb.net 中使用 LINQ 做同样的事情
Dim groupCounts = From person In data
Group By person.GroupId
Select new {group = person.GroupId, count = count(*)}
这不太正确,但我认为它很接近。
另外,对匿名类型了解不多,我是否可以groupCounts
提前声明它将是每个具有 group 和 count 属性的项目的枚举?