ApplyFullEnumerationChanges-Methode (ConflictResolutionPolicy, CollisionConflictResolutionPolicy, FullEnumerationChangeBatch, IChangeDataRetriever, IEnumerable(ItemChange), SyncKnowledge, ForgottenKnowledge, INotifyingChangeApplierTarget, IConflictLogAccess, SyncSessionContext, SyncCallbacks)

Führt als Teil einer Wiederherstellungssynchronisierung Konflikterkennung, Parallelitätskonfliktbehandlung, Einschränkungskonfliktbehandlung, Änderungsanwendung und Konfliktprotokollverwaltung für einen Batch von Änderungen aus.

Namespace:  Microsoft.Synchronization
Assembly:  Microsoft.Synchronization (in Microsoft.Synchronization.dll)

Syntax

'Declaration
Public Sub ApplyFullEnumerationChanges ( _
    resolutionPolicy As ConflictResolutionPolicy, _
    collisionConflictResolutionPolicy As CollisionConflictResolutionPolicy, _
    sourceChanges As FullEnumerationChangeBatch, _
    changeDataRetriever As IChangeDataRetriever, _
    destinationVersions As IEnumerable(Of ItemChange), _
    destinationKnowledge As SyncKnowledge, _
    destinationForgottenKnowledge As ForgottenKnowledge, _
    changeApplierTarget As INotifyingChangeApplierTarget, _
    conflictLogAccess As IConflictLogAccess, _
    syncSessionState As SyncSessionContext, _
    syncCallback As SyncCallbacks _
)
'Usage
Dim instance As NotifyingChangeApplier
Dim resolutionPolicy As ConflictResolutionPolicy
Dim collisionConflictResolutionPolicy As CollisionConflictResolutionPolicy
Dim sourceChanges As FullEnumerationChangeBatch
Dim changeDataRetriever As IChangeDataRetriever
Dim destinationVersions As IEnumerable(Of ItemChange)
Dim destinationKnowledge As SyncKnowledge
Dim destinationForgottenKnowledge As ForgottenKnowledge
Dim changeApplierTarget As INotifyingChangeApplierTarget
Dim conflictLogAccess As IConflictLogAccess
Dim syncSessionState As SyncSessionContext
Dim syncCallback As SyncCallbacks

instance.ApplyFullEnumerationChanges(resolutionPolicy, _
    collisionConflictResolutionPolicy, _
    sourceChanges, changeDataRetriever, _
    destinationVersions, destinationKnowledge, _
    destinationForgottenKnowledge, _
    changeApplierTarget, conflictLogAccess, _
    syncSessionState, syncCallback)
public void ApplyFullEnumerationChanges(
    ConflictResolutionPolicy resolutionPolicy,
    CollisionConflictResolutionPolicy collisionConflictResolutionPolicy,
    FullEnumerationChangeBatch sourceChanges,
    IChangeDataRetriever changeDataRetriever,
    IEnumerable<ItemChange> destinationVersions,
    SyncKnowledge destinationKnowledge,
    ForgottenKnowledge destinationForgottenKnowledge,
    INotifyingChangeApplierTarget changeApplierTarget,
    IConflictLogAccess conflictLogAccess,
    SyncSessionContext syncSessionState,
    SyncCallbacks syncCallback
)
public:
void ApplyFullEnumerationChanges(
    ConflictResolutionPolicy resolutionPolicy, 
    CollisionConflictResolutionPolicy collisionConflictResolutionPolicy, 
    FullEnumerationChangeBatch^ sourceChanges, 
    IChangeDataRetriever^ changeDataRetriever, 
    IEnumerable<ItemChange^>^ destinationVersions, 
    SyncKnowledge^ destinationKnowledge, 
    ForgottenKnowledge^ destinationForgottenKnowledge, 
    INotifyingChangeApplierTarget^ changeApplierTarget, 
    IConflictLogAccess^ conflictLogAccess, 
    SyncSessionContext^ syncSessionState, 
    SyncCallbacks^ syncCallback
)
member ApplyFullEnumerationChanges : 
        resolutionPolicy:ConflictResolutionPolicy * 
        collisionConflictResolutionPolicy:CollisionConflictResolutionPolicy * 
        sourceChanges:FullEnumerationChangeBatch * 
        changeDataRetriever:IChangeDataRetriever * 
        destinationVersions:IEnumerable<ItemChange> * 
        destinationKnowledge:SyncKnowledge * 
        destinationForgottenKnowledge:ForgottenKnowledge * 
        changeApplierTarget:INotifyingChangeApplierTarget * 
        conflictLogAccess:IConflictLogAccess * 
        syncSessionState:SyncSessionContext * 
        syncCallback:SyncCallbacks -> unit 
public function ApplyFullEnumerationChanges(
    resolutionPolicy : ConflictResolutionPolicy, 
    collisionConflictResolutionPolicy : CollisionConflictResolutionPolicy, 
    sourceChanges : FullEnumerationChangeBatch, 
    changeDataRetriever : IChangeDataRetriever, 
    destinationVersions : IEnumerable<ItemChange>, 
    destinationKnowledge : SyncKnowledge, 
    destinationForgottenKnowledge : ForgottenKnowledge, 
    changeApplierTarget : INotifyingChangeApplierTarget, 
    conflictLogAccess : IConflictLogAccess, 
    syncSessionState : SyncSessionContext, 
    syncCallback : SyncCallbacks
)

Parameter

Ausnahmen

Ausnahme Bedingung
ArgumentNullException

sourceChanges, changeDataRetriever, destinationKnowledge, changeApplierTarget oder syncCallback ist NULL.

ArgumentOutOfRangeException

- oder -

collisionResolutionPolicy ist kein Member der CollisionConflictResolutionPolicy-Enumeration.

SyncIdFormatMismatchException
  • sourceChanges enthält vergessenes Wissen, as in einem anderen Format vorliegt als destinationKnowledge

- oder -

  • destinationForgottenKnowledge wurde angegeben und weist ein anderes Format auf als destinationKnowledge

Hinweise

Diese Methode erkennt Parallelitätskonflikte, die zwischen den in sourceChanges gesendeten Änderungen und den entsprechenden Elementen im Zielreplikat auftreten. Sie löst alle Parallelitätskonflikte gemäß der von resolutionPolicy angegebenen Richtlinie auf. Wenn Kollisionseinschränkungskonflikte vom Zielanbieter gemeldet werden, löst diese Methode sie nach der von collisionConflictResolutionPolicy angegebenen Richtlinie auf. Wenn keine Richtlinie zur Konfliktauflösung festgelegt wird, benachrichtigt diese Methode die Anwendung über einen Konflikt, und die Anwendung gibt eine Konfliktauflösungsaktion an. Falls erforderlich, ruft diese Methode anschließend Methoden für changeApplierTarget auf, um Änderungen im Zielreplikat sowie nicht aufgelöste Konflikte zu speichern.

Der Änderungsanwender unterstützt die Verwaltung des von conflictLogAccess angegebenen Konfliktprotokolls durch Auflösen von Konflikten im Protokoll und Entfernen veralteter Konflikte aus dem Protokoll. Der Änderungsanwender speichert im Konfliktprotokoll möglicherweise auch temporäre Konflikte, die als Ergebnis der Zusammenführung von Einschränkungskonflikten auftreten. Alle temporären, dem Protokoll hinzugefügten Konflikte werden vor dem Ende der Synchronisierungssitzung entfernt.

Siehe auch

Verweis

NotifyingChangeApplier Klasse

NotifyingChangeApplier-Member

ApplyFullEnumerationChanges-Überladung

Microsoft.Synchronization-Namespace