static void Main(string[] args) { //A betöltést az osztály végezze, és adja vissza //a kész listát Kutyanevek kutyanevAdat = new Kutyanevek("KutyaNevek.csv"); var kutyanevek = kutyanevAdat.GetKutyaNevek(); Kutyafajtak fajtaAdat = new Kutyafajtak("KutyaFajtak.csv"); var kutyafajtak = fajtaAdat.GetKutyaFajtak(); Kutyak kutyaAdat = new Kutyak("Kutyak.csv"); var kutyak = kutyaAdat.GetKutyak(); Console.WriteLine($"{kutyanevek.Count},{kutyafajtak.Count},{kutyak.Count}"); var nevvel = kutyak.Join(kutyanevek, k => k.NevId, kn => kn.Id, (k, kn) => new { Kor = k.Eletkor, Kutyanev = kn.KutyaNeve, FajtaId = k.FajtaId }); var osszes = nevvel.Join(kutyafajtak, n => n.FajtaId, kf => kf.Id, (n, kf) => new { Kor = n.Kor, Kutyanev = n.Kutyanev, Fajta = kf.Nev } ); foreach (var i in osszes) { // Console.WriteLine($"{i.Kor},{i.Kutyanev},{i.Fajta}"); } var legoregebb = osszes.Where(x => x.Kor == osszes.Max(y => y.Kor)); //A legöregebb kutya adatainak kiíratása //első elem Console.WriteLine(legoregebb.ElementAt(0)); //az első elem másképpen Console.WriteLine($"{legoregebb.First().Fajta},{legoregebb.First().Kor},{legoregebb.First().Kutyanev}"); Console.ReadKey(); }
static void Main(string[] args) { Kutyak kutyak = new Kutyak("kutyak.csv"); Kutyafajtak kutyafajtak = new Kutyafajtak("kutyafajtak.csv"); Kutyanevek kutyanevek = new Kutyanevek("kutyanevek.csv"); Console.WriteLine($"{kutyak.Kutyaadatok.Count}"); var kutyaknevekkel = kutyak.Kutyaadatok.Join(kutyanevek.Kutyanevadatok, k => k.NevId, kn => kn.Id, (k, kn) => new { Id = k.Id, Kutyanev = kn.Kutyaneve, FajtaId = k.FajtaId, Eletkor = k.Eletkor, UtolsoEll = k.UtolsoEll } ); var teljes = kutyaknevekkel.Join(kutyafajtak.Kutyafajtaadatok, kn => kn.FajtaId, kf => kf.Id, (kn, kf) => new { Id = kn.Id, Kutyanev = kn.Kutyanev, Kutyafajta = kf.Nev, Kutyafajtaeredeti = kf.Eredetinev, Eletkor = kn.Eletkor, UtolsoEll = kn.UtolsoEll } ); //foreach (var i in teljes) //{ // Console.WriteLine($"{i.Id},{i.Eletkor},{i.Kutyanev},{i.Kutyafajta}"); //} var legidosebb = teljes.Where(x => x.Eletkor == teljes.Max(y => y.Eletkor)); Console.WriteLine($"A legidősebb kutya:{legidosebb.ElementAt(0).Kutyanev},{legidosebb.ElementAt(0).Kutyafajta}"); Console.WriteLine($"A legidősebb kutya:{legidosebb.First().Kutyanev},{legidosebb.First().Kutyafajta}"); var januar = teljes.Where(x => x.UtolsoEll == "2018.01.10"); var fajtankent = januar.ToLookup(x => x.Kutyafajta); foreach (var i in fajtankent) { Console.WriteLine($"{i.Key},{i.Count()} db"); } var maxterheles = teljes.ToLookup(x => x.UtolsoEll).OrderByDescending(x => x.Count()); Console.WriteLine($"{maxterheles.First().Key},{maxterheles.First().Count()}"); var nevstat = teljes.ToLookup(x => x.Kutyanev).OrderByDescending(x => x.Count()); foreach (var i in nevstat) { Console.WriteLine($"{i.Key};{i.Count()}"); } Console.ReadKey(); }