DataTable 合并多个模式

Posted

技术标签:

【中文标题】DataTable 合并多个模式【英文标题】:DataTable Merge multiple schemas 【发布时间】:2013-03-19 22:49:13 【问题描述】:

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

谢谢...

【问题讨论】:

【参考方案1】:

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

【讨论】:

以上是关于DataTable 合并多个模式的主要内容,如果未能解决你的问题,请参考以下文章

C# 合并多个结构相同的DataTable

c# 两个datatable合并

datatable合并多列

c#.net 如何将两个datatable拼接成一个Datatable

c#.net 如何将两个datatable拼接成一个Datatable

C# 两个datatable合并取并集减交集请问该段代码怎么写?