Compartilhar via


Propriedade 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
    Get
'Uso
Dim instance As SqlCeClientSyncProvider
Dim value As SyncConflictResolver

value = instance.ConflictResolver
public SyncConflictResolver ConflictResolver { get; }
public:
property SyncConflictResolver^ ConflictResolver {
    SyncConflictResolver^ get ();
}
member ConflictResolver : SyncConflictResolver
function get ConflictResolver () : SyncConflictResolver

Valor da propriedade

Tipo: Microsoft.Synchronization.Data. . :: . .SyncConflictResolver
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.

Exemplos

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

SqlCeClientSyncProvider Classe

Membros SqlCeClientSyncProvider

Namespace Microsoft.Synchronization.Data.SqlServerCe