Sto creando un modulo che produrrà un elenco di oggetti mancanti in un elenco. Attualmente il codice che ho impiegato è troppo lungo per un elenco di circa 300.000 oggetti.
public List<SimpleObject> GetNonExistentObjects()
{
List<SimpleObject> source = GetNodes();//contains 300,000
List<SimpleObject> target = GetNodes();//contains 300,005
List<SimpleObject> nonExistentObjects = new List<SimpleObject>();
foreach(Object obj in source)
{
bool existing = target.Any(x => x.Name == obj.Name && x.Label == obj.Label)
if(!existing)
nonExistentObjects.Add(obj);//Contains 5 objects
}
return nonExistentObjects;
}
Devo creare un sacco di metodi come questo, quindi vorrei chiedere come ottimizzare questo particolare metodo.
UPDATE:
T
è solo una semplice classe che ho creato che contiene 2 proprietà. Proprio quello
public class SimpleObject
{
public string Name {get; set}
public string Label {get; set;}
}