ApplyChanges メソッド (ConflictResolutionPolicy, ChangeBatch, IChangeDataRetriever, SyncKnowledge, ForgottenKnowledge, INotifyingChangeApplierTarget, SyncSessionContext, SyncCallbacks)
変更バッチに対して競合検出、競合処理、および変更の適用を実行します。
名前空間: Microsoft.Synchronization
アセンブリ: Microsoft.Synchronization (Microsoft.Synchronization.dll 内)
構文
'宣言
Public Sub ApplyChanges ( _
resolutionPolicy As ConflictResolutionPolicy, _
sourceChanges As ChangeBatch, _
changeDataRetriever As IChangeDataRetriever, _
destinationKnowledge As SyncKnowledge, _
destinationForgottenKnowledge As ForgottenKnowledge, _
changeApplierTarget As INotifyingChangeApplierTarget, _
syncSessionState As SyncSessionContext, _
syncCallback As SyncCallbacks _
)
'使用
Dim instance As NotifyingChangeApplier
Dim resolutionPolicy As ConflictResolutionPolicy
Dim sourceChanges As ChangeBatch
Dim changeDataRetriever As IChangeDataRetriever
Dim destinationKnowledge As SyncKnowledge
Dim destinationForgottenKnowledge As ForgottenKnowledge
Dim changeApplierTarget As INotifyingChangeApplierTarget
Dim syncSessionState As SyncSessionContext
Dim syncCallback As SyncCallbacks
instance.ApplyChanges(resolutionPolicy, _
sourceChanges, changeDataRetriever, _
destinationKnowledge, destinationForgottenKnowledge, _
changeApplierTarget, syncSessionState, _
syncCallback)
public void ApplyChanges(
ConflictResolutionPolicy resolutionPolicy,
ChangeBatch sourceChanges,
IChangeDataRetriever changeDataRetriever,
SyncKnowledge destinationKnowledge,
ForgottenKnowledge destinationForgottenKnowledge,
INotifyingChangeApplierTarget changeApplierTarget,
SyncSessionContext syncSessionState,
SyncCallbacks syncCallback
)
public:
void ApplyChanges(
ConflictResolutionPolicy resolutionPolicy,
ChangeBatch^ sourceChanges,
IChangeDataRetriever^ changeDataRetriever,
SyncKnowledge^ destinationKnowledge,
ForgottenKnowledge^ destinationForgottenKnowledge,
INotifyingChangeApplierTarget^ changeApplierTarget,
SyncSessionContext^ syncSessionState,
SyncCallbacks^ syncCallback
)
member ApplyChanges :
resolutionPolicy:ConflictResolutionPolicy *
sourceChanges:ChangeBatch *
changeDataRetriever:IChangeDataRetriever *
destinationKnowledge:SyncKnowledge *
destinationForgottenKnowledge:ForgottenKnowledge *
changeApplierTarget:INotifyingChangeApplierTarget *
syncSessionState:SyncSessionContext *
syncCallback:SyncCallbacks -> unit
public function ApplyChanges(
resolutionPolicy : ConflictResolutionPolicy,
sourceChanges : ChangeBatch,
changeDataRetriever : IChangeDataRetriever,
destinationKnowledge : SyncKnowledge,
destinationForgottenKnowledge : ForgottenKnowledge,
changeApplierTarget : INotifyingChangeApplierTarget,
syncSessionState : SyncSessionContext,
syncCallback : SyncCallbacks
)
パラメーター
- resolutionPolicy
型 : Microsoft.Synchronization. . :: . .ConflictResolutionPolicy
競合を解決するために使用するポリシーです。
- sourceChanges
型 : Microsoft.Synchronization. . :: . .ChangeBatch
同期元プロバイダーからの変更のバッチです。
- changeDataRetriever
型 : Microsoft.Synchronization. . :: . .IChangeDataRetriever
同期元レプリカから項目データを取得するために使用できるオブジェクトです。
- destinationKnowledge
型 : Microsoft.Synchronization. . :: . .SyncKnowledge
同期先レプリカのナレッジです。
- destinationForgottenKnowledge
型 : Microsoft.Synchronization. . :: . .ForgottenKnowledge
同期先レプリカの忘れられたナレッジです。
- changeApplierTarget
型 : Microsoft.Synchronization. . :: . .INotifyingChangeApplierTarget
変更および競合を保存するために呼び出されるオブジェクトです。
- syncSessionState
型 : Microsoft.Synchronization. . :: . .SyncSessionContext
現在のセッションに関する状態情報です。
- syncCallback
型 : Microsoft.Synchronization. . :: . .SyncCallbacks
変更の適用イベントに関する通知を受信するコールバックです。
例外
例外 | 条件 |
---|---|
ArgumentNullException | sourceChanges、changeDataRetriever、destinationKnowledge、changeApplierTarget、または syncCallback が null Nothing nullptr unit NULL 参照 (Visual Basic では Nothing) です。 |
ArgumentOutOfRangeException | resolutionPolicy が ConflictResolutionPolicy 列挙体のメンバーではありません。 |
SyncIdFormatMismatchException |
または
|
説明
このメソッドは、sourceChanges で送信された変更と同期先レプリカ内の対応する項目の間で発生する競合を検出します。競合は、resolutionPolicy で指定されたポリシーに従って解決されます。必要に応じて、このメソッドは、changeApplierTarget のメソッドを呼び出し、同期先レプリカへの変更を保存し、未解決の競合を保存します。
同期先バージョンを取得するために、このメソッドは、sourceChanges 内の各項目について、changeApplierTarget の TryGetDestinationVersion を呼び出します。