私は2つのIEnumerable<T>
を持っています。2つのIEnumerableをマージする<T>s
1つは、フォールバック要素で満たされます。これは常に最も多くの要素を含みます。 いくつかのパラメータに応じてもう1つは塗りつぶされ、少ない要素が含まれます。 要素が2番目の要素に存在しない場合は、最初の要素と同等の要素を入力する必要があります。
このコードでは、仕事をしていませんが、私には非効率的な感じとIListsにIEnumerablesをキャストするか、一時リスト 人が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);
}
任意の提案を実装して使用するように私を必要と? PersonComparerがある
これは素晴らしいですが、あなたが気づく必要がある問題があります: http://programmaticallyspeaking.com/how-enumerableconcat-brought-down-a-production-server.html – Oliver