using System.Collections.Generic;
using System.Diagnostics;
public String Cor { get; set; }
public String Nome { get; set; }
public static void Main()
var frutas = new List<Fruta> {
new Fruta { Cor = "Vermelha", Nome = "Morango" },
new Fruta { Cor = "Vermelha", Nome = "Framboesa" },
new Fruta { Cor = "Vermelha", Nome = "Cereja" },
new Fruta { Cor = "Verde", Nome = "Limão" },
new Fruta { Cor = "Verde", Nome = "Melancia" }
var grupos = frutas.GroupBy(f => f.Cor);
Console.WriteLine("Imprimindo grupos");
Console.WriteLine("-----------------------");
foreach (var nomeGrupo in grupos.Select(g => g.Key)) {
Console.WriteLine(nomeGrupo);
Console.WriteLine("-----------------------");
foreach (var listaDeFrutasPorCor in grupos) {
Console.WriteLine("Imprimindo frutas da cor: " + listaDeFrutasPorCor.Key);
Console.WriteLine("-----------------------");
foreach (var fruta in listaDeFrutasPorCor) {
Console.WriteLine(fruta.Nome);
Console.WriteLine("-----------------------");