DbSyncConflict Class
Represents a synchronization conflict at the row level.
Assembly: Microsoft.Synchronization.Data (in Microsoft.Synchronization.Data.dll)
The DbSyncConflict type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | DbSyncConflict() | Initializes a new instance of the DbSyncConflict class by using default values. |
![]() | DbSyncConflict(DbConflictType, DbSyncStage) | Initializes a new instance of the DbSyncConflict class by using conflict type and conflict stage parameters. |
| Name | Description | |
|---|---|---|
![]() | ErrorMessage | Gets or sets the error message that is returned when DbConflictType is set to ErrorsOccurred. |
![]() | LocalChange | Gets the DataTable object that contains the conflicting rows from the local database. |
![]() | RemoteChange | Gets the DataTable object that contains the conflicting rows from the remote database. |
![]() | Stage | Gets or sets the DbSyncStage enumeration value that represents the synchronization stage during which the conflict occurred. |
![]() | Type | Gets or sets the DbConflictType enumeration value that represents the type of synchronization conflict. |
In Sync Framework, conflicts and errors are detected at the level of the row. A row is in conflict when it has been changed at more than one node between synchronizations. Errors that occur during synchronization typically involve a constraint violation, such as a duplicate primary key. Applications should be designed to avoid conflicts if they can, because conflict detection and resolution introduce additional complexity, processing, and network traffic.
If a row cannot be applied during synchronization, this is usually because either an error or a data conflict occurred. In both cases, the ApplyChangeFailed event is raised. Conflict and error resolution should be handled in response to this event.
For an example of how to handle conflicts, see How to: Handle Data Conflicts and Errors for Database Synchronization (SQL Server).
