0

我是 DataTables 的新手,需要一些帮助,特别是 Merge 方法。

我有一个 WPF 应用程序,其中我的 UI 元素绑定到 1 行 DataTable 中的各个列。有很多列。我有一个线程从 MSMQ 接收序列化的 DataTable 对象,对其进行反序列化,然后用新行替换 DataTable 中的单行,从而更新绑定控件中的值(在重置 DataContext 之后)。到目前为止,这工作正常。

现在需要轮询 2 个不同的 MSMQ 队列,每个队列都有自己的数据,然后用两者刷新我的 DataTable。所以这是我的问题:

情况:
我有包含 IDCol、Col1、Col2、Col3、Col4 列的 MainTable。
进程 1 返回一个带有 IDCol、Col1、Col2 的 NewTable。
过程 2 返回一个带有 IDCol、Col3、Col4 的 NewTable。
在所有情况下,IDCol 都是主键并且具有相同的值。
每个进程都在自己的线程中运行(实际上是 BackgroundWorker)。

我可以在每个线程中使用 DataTable.Merge(NewTable) 吗,它们会正确合并各个列,而不是删除行并添加新行的旧方法吗?

谢谢...

4

1 回答 1

0

我能够自己解决这个问题。只要返回的每个数据表的主键字段与我的主记录的主键字段匹配,合并就会像宣传的那样工作。不管怎么说,还是要谢谢你...

于 2013-03-21T20:23:36.010 回答