Compartilhar via


Propriedade SqlCeClientSyncProvider.ConflictResolver

Obtém um objeto SyncConflictResolver para o provedor de sincronização do cliente, que determina a ação a ser executada quando ocorre um conflito.

Namespace: Microsoft.Synchronization.Data.SqlServerCe
Assembly: Microsoft.Synchronization.Data.SqlServerCe (em microsoft.synchronization.data.sqlserverce.dll)

Sintaxe

'Declaração
Public ReadOnly Property ConflictResolver As SyncConflictResolver
'Uso
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

Valor da propriedade

Um objetoSyncConflictResolver que determina a ação a ser executada quando ocorre um conflito.

Comentários

SqlCeClientSyncProvider inclui uma propriedade ConflictResolver que pode ser usada para resolver conflitos no cliente. Para cada tipo de conflito, você pode definir um valor a partir da enumeração ResolveAction:

Não há nenhum requisito para definir ConflictResolver para cada tipo de conflito. Você pode resolver conflitos da mesma maneira como no servidor, tratando o evento ApplyChangeFailed. No entanto, a propriedade ConflictResolver oferece uma maneira fácil de especificar as opções de resolução de conflitos no cliente. Para obter mais informações, consulte Como tratar conflitos de dados e erros.

Exemplo

O exemplo de código a seguir define a ação de resolução para cada tipo de conflito que o provedor de sincronização do cliente pode encontrar. Para exibir esse código no contexto de um exemplo completo, consulte Como tratar conflitos de dados e erros.

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

Consulte também

Referência

Classe SqlCeClientSyncProvider
Membros SqlCeClientSyncProvider
Namespace Microsoft.Synchronization.Data.SqlServerCe