Linq Groupby

Linq Groupby
In C#, se si desidera raggruppare tutti i valori simili in un posto, LinQ in C# fornisce il metodo GroupBy ().

Il metodo GroupBy LINQ viene utilizzato per raggruppare i valori simili in un attributo specificato e posizionare con tutti gli elementi simili.

Sintassi del metodo:

input_source.GroupBy (elemento => elemento.attributo);

Sintassi delle query:

da iteratore nel gruppo input_source iteratore di iteratore.attributo

Dove, input_source è l'origine dati (elenco) e iteratore viene utilizzato per iterare gli elementi presenti in input_source.

Esempio 1:

Creeremo un elenco che memorizza i dettagli alimentari e raggrupperemo i valori nell'elenco in base a attributi diversi.

usando il sistema;
Utilizzo del sistema.Linq;
Utilizzo del sistema.Collezioni.Generico;
// Crea una classe - Linuxhint
Classe Linuxhint

// Definisci i dati per il cibo
cibo di classe

public int food_price get; impostato;
Nome della stringa pubblica get; impostato;
Public int Quantity get; impostato;
Public String City get; impostato;

statico public void main ()
// Crea dati
ListFirst_list = new List ();
// Aggiungi valori
First_list.Add (new Food Food_price = 300, name = "VegTables", Quantity = 1, City = "California");
First_list.Add (new Food food_price = 34, name = "frutti", quantità = 4, città = "California");
First_list.Add (new Food food_price = 100, name = "fungo", quantità = 2, città = "nepal");
First_list.Add (new Food Food_price = 564, name = "VegTables", Quantity = 10, City = "Guntur");
First_list.Add (new Food food_price = 500, name = "frutti", quantità = 8, città = "nepal");
First_list.Aggiungi (nuovo alimento food_price = 764, name = "impulsi", quantità = 10, city = "guntur");
First_list.Aggiungi (nuovo alimento food_price = 400, name = "impulsi", quantità = 8, città = "nepal");
Console.WriteLine ("-------------------------- Elenco effettivo ------------------- ------- ");
foreach (valori var in first_list)

Console.Writeline (valore.Food_price+"->"+valore.nome+"->"+valore.quantità+"->"+valore.città);

Console.WriteLine ("-------------------------- Linq Groupby City ---------------------- -------- ");
// raggruppa i valori nell'attributo della città
var result = first_list.GroupBy (elemento => elemento.città);
// Visualizza i risultati raggruppati utilizzando Foreach Loop
foreach (var i in risultato)

foreach (var j in i)

Console.Writeline (j.Food_price+"->"+J.nome+"->"+j.quantità+"->"+j.città);


Console.WriteLine ("-------------------------- Nome Groupby Linq ------------------ -------- ");
// raggruppa i valori nell'attributo nome
var result2 = first_list.GroupBy (elemento => elemento.nome);
// Visualizza i risultati raggruppati utilizzando Foreach Loop
foreach (var i in risultato2)

foreach (var j in i)

Console.Writeline (j.Food_price+"->"+J.nome+"->"+j.quantità+"->"+j.città);



Produzione:

Spiegazione:

1. Quindi prima, abbiamo creato un elenco che aveva dettagli sul cibo.

2. Dopodiché, stiamo raggruppando i valori nella colonna della città. Infine, stiamo usando per ogni ciclo per visualizzare i valori raggruppati.

3. Infine, stiamo raggruppando i valori nella colonna Nome quindi stiamo usando per ogni ciclo per visualizzare i valori raggruppati.

Esempio 2:

Creeremo un elenco che memorizza i dettagli alimentari e raggrupperemo i valori nell'elenco in base a attributi diversi usando la sintassi delle query.

usando il sistema;
Utilizzo del sistema.Linq;
Utilizzo del sistema.Collezioni.Generico;
// Crea una classe - Linuxhint
Classe Linuxhint

// Definisci i dati per il cibo
cibo di classe

public int food_price get; impostato;
Nome della stringa pubblica get; impostato;
Public int Quantity get; impostato;
Public String City get; impostato;

statico public void main ()
// Crea dati
ListFirst_list = new List ();
// Aggiungi valori
First_list.Add (new Food Food_price = 300, name = "VegTables", Quantity = 1, City = "California");
First_list.Add (new Food food_price = 34, name = "frutti", quantità = 4, città = "California");
First_list.Add (new Food food_price = 100, name = "fungo", quantità = 2, città = "nepal");
First_list.Add (new Food Food_price = 564, name = "VegTables", Quantity = 10, City = "Guntur");
First_list.Add (new Food food_price = 500, name = "frutti", quantità = 8, città = "nepal");
First_list.Aggiungi (nuovo alimento food_price = 764, name = "impulsi", quantità = 10, city = "guntur");
First_list.Aggiungi (nuovo alimento food_price = 400, name = "impulsi", quantità = 8, città = "nepal");
Console.WriteLine ("-------------------------- Elenco effettivo ------------------- ------- ");
foreach (valori var in first_list)

Console.Writeline (valore.Food_price+"->"+valore.nome+"->"+valore.quantità+"->"+valore.città);

Console.WriteLine ("-------------------------- Linq Groupby City ---------------------- -------- ");
// raggruppa i valori nell'attributo della città
VAR Result = da Iterator1 nel gruppo First_List Iterator1 di Iterator1.città;
// Visualizza i risultati raggruppati utilizzando Foreach Loop
foreach (var i in risultato)

foreach (var j in i)

Console.Writeline (j.Food_price+"->"+J.nome+"->"+j.quantità+"->"+j.città);


Console.WriteLine ("-------------------------- Nome Groupby Linq ------------------ -------- ");
// raggruppa i valori nell'attributo nome
VAR Result2 = da Iterator2 nel gruppo First_List Iterator2 di Iterator2.nome;
// Visualizza i risultati raggruppati utilizzando Foreach Loop
foreach (var i in risultato2)

foreach (var j in i)

Console.Writeline (j.Food_price+"->"+J.nome+"->"+j.quantità+"->"+j.città);



Produzione:

Spiegazione:

1. Innanzitutto, abbiamo creato un elenco che aveva dettagli alimentari.

2. Successivamente, stiamo raggruppando i valori nella colonna della città, quindi stiamo usando per ogni ciclo per visualizzare i valori raggruppati.

3. Infine, stiamo raggruppando i valori nella colonna Nome quindi stiamo usando per ogni ciclo per visualizzare i valori raggruppati.

Conclusione

Il metodo GroupBy LINQ viene utilizzato per raggruppare i valori simili in un attributo specificato e posizionare tutti gli elementi simili usando il metodo e la query. Raggruppa tutti i valori simili in un posto e possiamo restituire i valori raggruppati usando il ciclo foreach.