2017-07-09 11 views
1

LINQクエリ

Dim ListA as List (of MyClass) 
Dim ListB as List (of MyClass) 

MyClassは、私が唯一のフィールドの比較に基づいて、唯一の共通項目が含まれてリストを導出するフィールドA, B , C, D

を含みA.Intersectは、共通のレコードがある場合でも(おそらくMyClassはcompareメソッドを実装していないため)0カウントのリストを返します。また、VB.Netでこれを行う方法はありますか?

+0

てみ 'Join'に参加使用することを検討してください、あなたはまだ、私が使用し'どこitemA.A = itemB.A'と等値比較 – Nkosi

答えて

0

LINQのは、共通のプロパティ共通の性質上

Dim ListA As List (Of SomeClass) 
Dim ListB As List (Of SomeClass) 
'... 
'Assuming both lists are initialized and populated 
Dim ListC As List (Of SomeClass) = (From itemA In ListA 
            Join itemB In ListB 
            On itemA.A Equals itemB.A 
            Select itemA).ToList() 
+0

と交差使用することができますそれは正常に働いた。問題は、空の初期リストから始めてループの中でこれらのリストを埋めていて、最終リストが空白になっていたことでした。 –