2012-05-28 123 views
1

目的:如果dt1包含Column["Item"]dt2還含有Column["Item"]然後,dt3將只有一個Column["Item"]。如果他們都有「漢堡」作爲一項,然後用一個覆蓋,如果不常見,然後添加一個新的行。C# - 合併兩個DataTable。任何方案?

我試過用tabel3.Clone(table1)table3.merge(table2)來做。這表明我:

A:Part 1

A:Part 2

請注意的tb1tb2共同要素是有和tb2所有元素。

但當我只是用tb1.merge(tb2)tb3=tb1,它正在觀察我: B: Part 1

B: Part 2

公告,tb1所有元素進行查看和兩者的合併表,但要素tb2不在查看。

因此,任何有關後目標的解決方案將不勝感激。 謝謝。 -MD。 Saffan Alvy。

回答

0

這可能是(不確定,但這將是我的第一次猜測)因爲Datatable.Merge()方法的默認行爲設置爲「PreserveChanges」而出現。

http://msdn.microsoft.com/en-us/library/fk68ew7b.aspx

在你的代碼中,「假」開關等添加到合併方法,並看看是否有幫助..

dt3.Clone(dt1); 
dt3.Merge(dt2, false); 

如果沒有,你可以複製出來的那部分代碼爲更新你的問題,這樣我們就可以更多地瞭解編碼。 當您的2個gridview正在填充時,您不需要複製包含您的OleDb設置的代碼部分,因此這些數據表格將是正確的。

謝謝,

凱文