Con la versione .Net 6 e versione successive, è possibile utilizzare il metodo "IntersectBy" per estrapolare un oggetto presente in entrambi le liste.
Di seguito il frammento di codice di una lista per la classe persona, con il quale si estrapolano gli oggetti che sono uguali in entrambi le liste, utilizzando come condizione la proprietà "Eta".
List<Persona> persone = new List<Persona>();
Persona persona = new Persona();
persona.Cognome = "Mattei";
persona.Nome = "Emanuele";
persona.Eta = 1;
persone.Add(persona);
persona = new Persona();
persona.Cognome = "Cristaldi";
persona.Nome = "Luigi";
persona.Eta = 2;
persone.Add(persona);
persona = new Persona();
persona.Cognome = "Bianchi";
persona.Nome = "Luca";
persona.Eta = 3;
persone.Add(persona);
List<Persona> persone2 = new List<Persona>();
Persona persona2 = new Persona();
persona2.Cognome = "Mattei";
persona2.Nome = "Emanuele";
persona2.Eta = 1;
persone2.Add(persona2);
persona2 = new Persona();
persona2.Cognome = "Cristaldi";
persona2.Nome = "Luigi";
persona2.Eta = 4;
persone2.Add(persona2);
var risultato = persone.IntersectBy(persone2.Select(p=>p.Eta), p=>p.Eta); //Restituisce Emanuele Mattei
Nessun commento:
Posta un commento