.NET - 使用同一组主键合并两个数据表

本文关键字:合并 数据表 两个 一组 NET | 更新日期: 2023-09-27 18:31:31

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

我想做的是:

  1. Merge() 来自服务的新数据和来自文件的旧数据
  2. GetChanges() 查看自上次会话以来哪些数据发生了变化。
  3. 对所有新行、已修改行和已删除行执行操作。
  4. 将数据保存到文件。

我在第一步中遇到问题。当我合并两个数据表时,我得到异常,主键已经存在于数据表中。这不是我需要的行为。在这种情况下,应更新数据行,而不是添加数据行。

也许有人知道解决这个问题的简单方法。多谢。

.NET - 使用同一组主键合并两个数据表

Honza Kovář链接的文章有一个例子。这段代码工作正常,看起来和我的代码一样。我在创建的类型化数据集中发现了问题。我犯了一个错误,将字段设置为键,而不是主键。