0

私の winform アプリでは、次のコードを使用して 2 つのテーブルをマージしています。

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

しかし、問題は、SourceData テーブルの RowState が追加され、DestinationTable の行状態が変更されていることです。したがって、宛先テーブルの値は上書きされません。

以下は、私が上で言ったことを証明する msdn から入手した参照です。

入力行の RowState が追加され、既存の行の RowState が Unchanged、Modified、または Deleted の場合、既存の行の RowState は Modified に設定されます。また、受信行には元の行バージョンがないため、既存の行の元の行バージョンのデータは受信行のデータで上書きされません。

何らかの方法で宛先テーブルの変更を上書きする方法はありますか、または宛先テーブルの変更を上書きできるようにソーステーブルの行状態を変更する方法がある場合は?

提案してください

4

1 に答える 1

0

気にしないでください。つまり、AcceptChanges はテーブルに加えられた変更をコミットし、rowstate を Unchanged に変更します。これにより、宛先テーブルの変更を上書きできます。

于 2012-06-08T22:30:06.957 に答える