0
参加することのLINQラムダネストされた式を使用:私は次のコードを持っている二つのリスト
List<MyClass> list1 = GetList1Contents();
List<MyClass> list2 = GetList2Contents();
foreach (MyClass eachClass in list1)
{
List<MyClass> results = (list2.Select(x => x.History.Select(z => (z.Key == eachClass.ID))));
}
MyClassのは、歴史と呼ばれるリストが含まれています。私がしようとしているのはリスト1の履歴エントリを持つlist2のエントリと一致しますが、コンパイラは自分の構文が嫌いです。
おそらく、WhereまたはAny(および/またはJoin)を使用したいが、達成しようとしていることを正確に知ることは難しいだろう。履歴リストの種類は何ですか? History.KeyおよびMyClass.IDとは何ですか?詳細を教えてください。 –
アイテムを見つけるには 'Select'ではなく' Where'(または 'Any'、' FirstOrDefault')を使うべきです。 'Select(z => z.Key == id)'は実際にはIEnumerableを返します。 –