.NET - 合并表不会覆盖

时间:2012-06-08 22:07:20

标签: .net merge datatable overwrite

在我的winform应用程序中,我使用以下代码合并两个表:

            ldtDestinationData.Merge(ldtSourceData, False, MissingSchemaAction.Add)

但是问题是我的SourceData表的RowState被添加了,而我的DestinationTable的rowstate被修改了;因此它不会覆盖Destination表中的值。

以下是我从msdn获得的参考资料,证明了我上面所说的内容:

  

如果传入行的RowState为Added,并且现有行的RowState为Unchanged,Modified或Deleted,则现有行的RowState将设置为Modified。此外,来自现有行的原始行版本的数据不会被传入行中的数据覆盖,因为传入行没有原始行版本。

有没有办法以某种方式覆盖目标表中的更改或者是否有办法更改源表的行状态以便可以覆盖目标表中的更改?

请建议

1 个答案:

答案 0 :(得分:0)

没关系..我得到了解决方案,即AcceptChanges提交对表的更改并将rowstate更改为Unchanged,这样就可以覆盖目标表中的更改。