SqlCeClientSyncProvider.ConflictResolver 속성
클라이언트 동기화 공급자의 SyncConflictResolver 개체를 가져옵니다. 이 개체는 충돌 발생 시 수행할 동작을 결정합니다.
네임스페이스: Microsoft.Synchronization.Data.SqlServerCe
어셈블리: microsoft.synchronization.data.sqlserverce.dll의 Microsoft.Synchronization.Data.SqlServerCe
구문
‘선언
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 열거형에서 값을 설정할 수 있습니다.
ClientWins: Continue의 ApplyAction을 설정하는 것에 해당합니다.
ServerWins: RetryWithForceWrite의 ApplyAction을 설정하는 것에 해당합니다.
FireEvent: ApplyChangeFailed 이벤트(기본값)를 발생시키고 해당 이벤트를 처리합니다.
각 충돌 유형에 대해 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 네임스페이스