Поделиться через


Свойство SqlCeClientSyncProvider.ConflictResolver

Возвращает для службы синхронизации клиента объект SyncConflictResolver, который определяет, какое действие должно быть выполнено при возникновении конфликта.

Пространство имен: Microsoft.Synchronization.Data.SqlServerCe
Сборка: Microsoft.Synchronization.Data.SqlServerCe (в microsoft.synchronization.data.sqlserverce.dll)

Синтаксис

'Декларация
Public ReadOnly Property ConflictResolver As SyncConflictResolver
'Применение
Dim instance As SqlCeClientSyncProvider
Dim value As SyncConflictResolver

value = instance.ConflictResolver
public SyncConflictResolver ConflictResolver { get; }
public:
property SyncConflictResolver^ ConflictResolver {
    SyncConflictResolver^ get ();
}
/** @property */
public SyncConflictResolver get_ConflictResolver ()
public function get ConflictResolver () : SyncConflictResolver

Значение свойства

Объект SyncConflictResolver, который определяет, какое действие должно быть выполнено при возникновении конфликта.

Замечания

Объект SqlCeClientSyncProvider содержит свойство ConflictResolver, которое позволяет производить разрешение конфликтов на клиенте. Для каждого типа конфликта, можно задать значение из ResolveAction перечисления:

Свойство ConflictResolver не обязательно задавать для каждого из типов конфликтов. Конфликты можно разрешать таким же образом, как на сервере, — обрабатывая событие ApplyChangeFailed. Однако свойство ConflictResolver обеспечивает простой способ установки параметров для устранения конфликтов на клиенте. Дополнительные сведения см. в разделе Как обрабатывать конфликты и ошибки в данных.

Пример

В следующем примере кода задается действие по разрешению каждого из типов конфликтов, которые могут возникнуть в службе синхронизации на клиенте. Чтобы просмотреть этот код в контексте полного примера, см. раздел Как обрабатывать конфликты и ошибки в данных.

this.ConflictResolver.ClientDeleteServerUpdateAction = ResolveAction.ServerWins;            
this.ConflictResolver.ClientUpdateServerDeleteAction = ResolveAction.ClientWins;
//If any of the following conflicts or errors occur, the ApplyChangeFailed
//event is raised.
this.ConflictResolver.ClientInsertServerInsertAction = ResolveAction.FireEvent;
this.ConflictResolver.ClientUpdateServerUpdateAction = ResolveAction.FireEvent;
this.ConflictResolver.StoreErrorAction = ResolveAction.FireEvent;

//Log information for the ApplyChangeFailed event and handle any
//ResolveAction.FireEvent cases.
this.ApplyChangeFailed +=new EventHandler<ApplyChangeFailedEventArgs>(SampleClientSyncProvider_ApplyChangeFailed);
Me.ConflictResolver.ClientDeleteServerUpdateAction = ResolveAction.ServerWins
Me.ConflictResolver.ClientUpdateServerDeleteAction = ResolveAction.ClientWins
'If any of the following conflicts or errors occur, the ApplyChangeFailed
'event is raised.
Me.ConflictResolver.ClientInsertServerInsertAction = ResolveAction.FireEvent
Me.ConflictResolver.ClientUpdateServerUpdateAction = ResolveAction.FireEvent
Me.ConflictResolver.StoreErrorAction = ResolveAction.FireEvent

'Log information for the ApplyChangeFailed event and handle any
'ResolveAction.FireEvent cases.
AddHandler Me.ApplyChangeFailed, AddressOf SampleClientSyncProvider_ApplyChangeFailed

См. также

Справочник

Класс SqlCeClientSyncProvider
Элементы SqlCeClientSyncProvider
Пространство имен Microsoft.Synchronization.Data.SqlServerCe