.NET - 使用同一组主键合并两个DataTable

时间:2014-11-21 08:24:54

标签: c# .net datatable merge dataset

我有两个具有相同架构和非常相似数据的DataTable。一个来自Web服务,另一个来自本地XML文件(上次会话保存的数据)。

我想做的是:

  1. 合并()来自服务的新数据和来自文件的旧数据
  2. GetChanges()查看自上次会话以来哪些数据发生了变化。
  3. 对所有新行,已修改行和已删除行执行操作。
  4. 将数据保存到文件。
  5. 我在第一步遇到问题。当我合并两个DataTable时,我得到了DataTable中已经存在主键的异常。这不是我需要的行为。在这种情况下,DataRow应该更新,而不是添加。

    Mayby有人知道解决这个问题的简单方法。非常感谢。

1 个答案:

答案 0 :(得分:1)

由HonzaKovář联系的文章就是一个例子。此代码工作正常,看起来与我的代码相同。我在我创建的类型化数据集中发现了问题。我犯了一个错误并将字段设置为键,而不是主键。