我是 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) 吗,它们会正确合并各个列,而不是删除行并添加新行的旧方法吗?
谢谢...