So erhalten Sie den Unterschied zwischen zwei DataTables

Habe ich diese zwei datatables und möchte ich, um den Unterschied zwischen Ihnen. Hier ist ein Beispiel:

Table1
-------------------------
ID  |   Name 
--------------------------
 1  |  A
 2  |  B
 3  |  C
--------------------------

Table2
-------------------------
ID  |   Name 
--------------------------
 1  |  A
 2  |  B
--------------------------

Ich will einfach nur das Ergebnis als Daten, die in Tabelle1 und nicht in Tabelle2 (Tabelle1-Tabelle2)

ResultTable
-------------------------
ID  |   Name 
--------------------------
 3  |  C
--------------------------

Ich habe versucht, diese beiden ähnlichen Lösungen über Linq, aber es immer wieder "Tabelle1" und nicht Tabelle1-Tabelle2. Hier ist die erste Lösung:

DataTable table1= ds.Tables["table1"];
DataTable table2= ds.Tables["table2"];
var diff= table1.AsEnumerable().Except(table2.AsEnumerable(),DataRowComparer.Default);

Zweite Lösung:

var dtOne = table1.AsEnumerable();
var dtTwo = table2.AsEnumerable();
var difference = dtOne.Except(dtTwo);

So, wo ist der Fehler??? Vielen Dank für alle Eure Antworten. 🙂

InformationsquelleAutor der Frage user2095405 | 2013-02-21

Schreibe einen Kommentar