Étant donné un datatable, je souhaite sortir un type IEnumerable (dictionnaire (de T) serait parfait, sinon une datable serait acceptable) qui fournit une agrégation des données dans le datatable.Effectuer une agrégation sur un DataTable avec Linq dans vb.net
Dans SQL Je voudrais écrire la requête en tant que tel:
select groupByColumn, sum(someNumber) from myTable group by groupByColumn
En VB.NET le plus proche je suis arrivé à ce (réalisé à l'aide des informations here) est:
' dt is a datatable containing two columns, referred to by index in p below
Dim q = From p In dt Group p By p(0) Into Sum(p(1)) Select p(0), SumOfNumber = Sum
Cependant, je reçois erreur: "Le nom de la variable Range ne peut être déduit qu'à partir d'un nom simple ou qualifié sans argument." sur l'élément p (0).
Par conséquent, ma question est la suivante:
- Comment puis-je résoudre ce problème?
- Comment puis-je traiter le résultat (q) en tant que type IEnumerable?
La vie n'est pas rendue plus facile parce que j'utilise Linq dans vb.net peu familier. Beaucoup d'exemples sont en C#, mais je n'ai pas vraiment trouvé quelque chose de convenable même en C#.
Il existe une méthode d'extension ToDictonary, comme dans q.ToDictionary ... – AMissico