Requête LINQ avec GROUP BY et Count(*) dans Anonyme de Type

Je suis en train d'utiliser une requête LINQ pour déterminer le nombre de chaque type d'objet particulier que j'ai et enregistrer ces valeurs dans un type anonyme.

Disons que j'ai des données qui ressemble à ceci (il y a vraiment des objets d'exposer cette propriété, mais il va fonctionner de la même)

GroupId
1
1
2
2
2
3

Je sais comment formater ma requête dans SQL. Il serait quelque chose comme ceci:

SELECT grp = GroupId, cnt = COUNT(*)
FROM myTable
GROUP BY GroupId

Dans ce cas, la sortie serait quelque chose comme ce SQL Violon:

GroupID  Count
1        2
2        3
3        1

Comment puis-je faire la même chose avec LINQ dans vb.net

Dim groupCounts = From person In data
                  Group By person.GroupId
                  Select new {group = person.GroupId, count = count(*)}

Ce n'est pas tout à fait raison, mais je pense que c'est à proximité.

Aussi, de ne pas savoir beaucoup sur les types anonymes, puis-je réellement besoin de les déclarer groupCounts à l'avance que ce sera une énumération des éléments qui ont chacun un groupe et de la propriété count?

InformationsquelleAutor KyleMit | 2013-05-10