1 pièce(s) jointe(s)
recuperer le resultat d'un GroupBy (linq to sql) en parcourant une collection
Bonjour,
Soit le code suivant
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
static string[] strings = new [] { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };
public static void Sample7() {
// use GroupBy() to construct group partitions out of similar elements
var q = strings.GroupBy(s => s[0]); // <- group by first character of each string
//g est l'élément result du group by
foreach(var g in q) {
Console.WriteLine("Group: {0}", g.Key);
foreach(string v in g) {
Console.WriteLine("\tValue: {0}", v);
}
}
} |
La première boucle foreach parcourt chacun des resultats obtenus par la requête GroupBy et recupère la clé. ok.
Chaque resultat comprend un tableau de type string nommé elements (voir imp ecran ci-jointe) avec les valeurs du tableau strings associés à chaque clé, par le GroupBy
Pourquoi ne peut on pas ecrire, dans la 2ème boucle foreach
Code:
1 2 3 4
|
foreach(string v in g.elements) {
Console.WriteLine("\tValue: {0}", v);
} |
au lieu du code
Code:
1 2 3 4
|
foreach(string v in g) {
Console.WriteLine("\tValue: {0}", v);
} |
ce qui paraît plus logique.
Merci beaucoup de votre aide!:D
Bien cordialement.
new_wave