Linq Groupby

Linq Groupby
En C #, si vous souhaitez regrouper toutes les valeurs similaires en un seul endroit, Linq en C # fournit la méthode GroupBy ().

La méthode Linq Groupby est utilisée pour regrouper les valeurs similaires dans un attribut et un lieu spécifié avec tous les éléments similaires.

Syntaxe de la méthode:

la source d'entrée.Groupby (élément => élément.attribut);

Syntaxe de requête:

De iterator dans ITERATOR DE GROUPE INPOST_SOURCE par iterator.attribut

Où, Input_source est la source de données (liste) et Iterator est utilisé pour itérer les éléments présents dans Input_source.

Exemple 1:

Nous allons créer une liste qui stocke les détails alimentaires et regrouperons les valeurs de la liste en fonction de différents attributs.

Utilisation du système;
Utilisation du système.Linq;
Utilisation du système.Collections.Générique;
// Créer une classe - Linuxhint
classe Linuxhint

// définir les données pour la nourriture
nourriture de classe

public int Food_price get; ensemble;
Nom de chaîne publique get; ensemble;
Public Int Quantity get; ensemble;
Public String City get; ensemble;

public statique void main ()
// Créer des données
ListFirst_list = new list ();
// ajouter des valeurs
first_list.Add (new Food food_price = 300, name = "vegtables", quantité = 1, city = "California");
first_list.Add (new Food food_price = 34, name = "fruits", quantité = 4, city = "California");
first_list.Add (new food food_price = 100, name = "champignon", quantité = 2, city = "nepal");
first_list.Add (new Food food_price = 564, name = "vegtables", quantité = 10, city = "guntur");
first_list.Add (new Food food_price = 500, name = "fruits", quantité = 8, city = "nepal");
first_list.Add (new food food_price = 764, name = "pulses", quantité = 10, city = "guntur");
first_list.Add (new food food_price = 400, name = "pulses", quantité = 8, city = "nepal");
Console.WriteLine ("-------------------------- Liste réelle ------------------- ------- ");
foreach (valeur var dans first_list)

Console.Writeline (valeur.Food_price + "->" + valeur.Nom + "->" + valeur.Quantité + "->" + valeur.ville);

Console.WriteLine ("-------------------------- Linq Groupby City ------------------ -------- ");
// regroupe les valeurs dans l'attribut de la ville
var result = first_list.Groupby (élément => élément.ville);
// Affiche les résultats groupés à l'aide de la boucle foreach
foreach (var i dans le résultat)

foreach (var j dans i)

Console.Writeline (J.aliments_price + "->" + j.Nom + "->" + J.Quantité + "->" + J.ville);


Console.WriteLine ("-------------------------- Linq Groupby Nom ------------------ -------- ");
// grouper les valeurs dans l'attribut de nom
var result2 = first_list.Groupby (élément => élément.nom);
// Affiche les résultats groupés à l'aide de la boucle foreach
foreach (var i in Result2)

foreach (var j dans i)

Console.Writeline (J.aliments_price + "->" + j.Nom + "->" + J.Quantité + "->" + J.ville);



Sortir:

Explication:

1. Alors d'abord, nous avons créé une liste qui avait des détails alimentaires.

2. Après cela, nous regroupons des valeurs dans la colonne de la ville. Enfin, nous utilisons pour chaque boucle pour afficher les valeurs groupées.

3. Enfin, nous regroupons les valeurs dans la colonne de nom, puis nous utilisons pour chaque boucle pour afficher les valeurs groupées.

Exemple 2:

Nous allons créer une liste qui stocke les détails alimentaires et regrouperons les valeurs de la liste en fonction de différents attributs à l'aide de la syntaxe de requête.

Utilisation du système;
Utilisation du système.Linq;
Utilisation du système.Collections.Générique;
// Créer une classe - Linuxhint
classe Linuxhint

// définir les données pour la nourriture
nourriture de classe

public int Food_price get; ensemble;
Nom de chaîne publique get; ensemble;
Public Int Quantity get; ensemble;
Public String City get; ensemble;

public statique void main ()
// Créer des données
ListFirst_list = new list ();
// ajouter des valeurs
first_list.Add (new Food food_price = 300, name = "vegtables", quantité = 1, city = "California");
first_list.Add (new Food food_price = 34, name = "fruits", quantité = 4, city = "California");
first_list.Add (new food food_price = 100, name = "champignon", quantité = 2, city = "nepal");
first_list.Add (new Food food_price = 564, name = "vegtables", quantité = 10, city = "guntur");
first_list.Add (new Food food_price = 500, name = "fruits", quantité = 8, city = "nepal");
first_list.Add (new food food_price = 764, name = "pulses", quantité = 10, city = "guntur");
first_list.Add (new food food_price = 400, name = "pulses", quantité = 8, city = "nepal");
Console.WriteLine ("-------------------------- Liste réelle ------------------- ------- ");
foreach (valeur var dans first_list)

Console.Writeline (valeur.Food_price + "->" + valeur.Nom + "->" + valeur.Quantité + "->" + valeur.ville);

Console.WriteLine ("-------------------------- Linq Groupby City ------------------ -------- ");
// regroupe les valeurs dans l'attribut de la ville
Var Result = From Iterator1 dans First_List Group Iterator1 par iterator1.ville;
// Affiche les résultats groupés à l'aide de la boucle foreach
foreach (var i dans le résultat)

foreach (var j dans i)

Console.Writeline (J.aliments_price + "->" + j.Nom + "->" + J.Quantité + "->" + J.ville);


Console.WriteLine ("-------------------------- Linq Groupby Nom ------------------ -------- ");
// grouper les valeurs dans l'attribut de nom
var result2 = from iterator2 dans first_list groupe iterator2 par iterator2.nom;
// Affiche les résultats groupés à l'aide de la boucle foreach
foreach (var i in Result2)

foreach (var j dans i)

Console.Writeline (J.aliments_price + "->" + j.Nom + "->" + J.Quantité + "->" + J.ville);



Sortir:

Explication:

1. Tout d'abord, nous avons créé une liste qui avait des détails alimentaires.

2. Après cela, nous regroupons des valeurs dans la colonne de la ville, puis nous utilisons pour chaque boucle pour afficher les valeurs groupées.

3. Enfin, nous regroupons les valeurs dans la colonne de nom, puis nous utilisons pour chaque boucle pour afficher les valeurs groupées.

Conclusion

La méthode Linq Groupby est utilisée pour regrouper les valeurs similaires dans un attribut spécifié et placer tous les éléments similaires en utilisant la méthode et la requête. Il regroupe toutes les valeurs similaires à un seul endroit et nous pouvons retourner les valeurs groupées en utilisant une boucle foreach.