Ho due IEnumerable<T>
s.Unione di due elementi IEnumerable <T> s
Uno si riempie degli ellementi di fallback. Questo conterrà sempre la maggior parte degli elementi. L'altro si riempirà a seconda di alcuni parametri e conterrà probabilmente meno elementi. Se un elemento non esiste nel secondo, ho bisogno di riempirlo con quello equivalente del primo.
Questo codice fa il lavoro, ma si sente inefficiente per me e mi obbliga a gettare le IEnumerables per ILists o per utilizzare un temporaneo lista persona implementa IEquatable
IEnumerable<Person> fallBack = Repository.GetPersons();
IList<Person> translated = Repository.GetPersons(language).ToList();
foreach (Person person in fallBack)
{
if (!translated.Any(p=>p.equals(person)))
translated.add(person);
}
Qualche suggerimento?
Funziona alla perfezione ma c'è un trucco che devi conoscere: http://programmaticallyspeaking.com/how-enumerableconcat-brought-down-a-production-server.html – Oliver