2011-07-26 20 views
3

2つのDataTableをマージして重複した行を削除することに関する多くの情報がありますが、その逆が必要です。C# - 行が重複している2つのDataTableをマージする

マージの結果が両方のテーブルに存在する行のみを持つDataTableである2つのDataTableを簡単にマージする方法があるかどうかを知る必要があります。このよう

+1

交差点が必要ですか? – SLaks

答えて

4

var intersection = table1.AsEnumerable() 
         .Intersect(table2.AsEnumerable(), DataRowComparer.Default); 

DataRowComparerはその列の値で行を比較します。

+1

しかしOPは "マージの結果はDataTable"を望んでいますか? – naveen

+0

@naveen:次に、 'CopyToDataTable()'を呼び出します。 – SLaks

+1

DataTableでAsEnumerable()を使用するには、System.Data.DataSetExtensionsへの参照が必要です。ちょっとメモすれば、エラーは発生しません。 :)また、それは* DataRowComparer.Default *ですか? –

関連する問題