Compartir a través de


NotifyingChangeApplier.ApplyChanges Método (ConflictResolutionPolicy, CollisionConflictResolutionPolicy, ChangeBatch, IChangeDataRetriever, SyncKnowledge, ForgottenKnowledge, INotifyingChangeApplierTarget, IConflictLogAccess, SyncSessionContext, SyncCallbacks)

Realiza la detección de conflictos, el control de conflictos de simultaneidad, el control de conflictos de restricción, la aplicación de cambios y la administración del registro de conflictos para un lote de cambios.

Espacio de nombres: Microsoft.Synchronization
Ensamblado: Microsoft.Synchronization (en microsoft.synchronization.dll)

Sintaxis

'Declaración
Public Sub ApplyChanges ( _
    resolutionPolicy As ConflictResolutionPolicy, _
    collisionConflictResolutionPolicy As CollisionConflictResolutionPolicy, _
    sourceChanges As ChangeBatch, _
    changeDataRetriever As IChangeDataRetriever, _
    destinationKnowledge As SyncKnowledge, _
    destinationForgottenKnowledge As ForgottenKnowledge, _
    changeApplierTarget As INotifyingChangeApplierTarget, _
    conflictLogAccess As IConflictLogAccess, _
    syncSessionState As SyncSessionContext, _
    syncCallback As SyncCallbacks _
)
'Uso
Dim instance As NotifyingChangeApplier
Dim resolutionPolicy As ConflictResolutionPolicy
Dim collisionConflictResolutionPolicy As CollisionConflictResolutionPolicy
Dim sourceChanges As ChangeBatch
Dim changeDataRetriever As IChangeDataRetriever
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.ApplyChanges(resolutionPolicy, collisionConflictResolutionPolicy, sourceChanges, changeDataRetriever, destinationKnowledge, destinationForgottenKnowledge, changeApplierTarget, conflictLogAccess, syncSessionState, syncCallback)
public void ApplyChanges (
    ConflictResolutionPolicy resolutionPolicy,
    CollisionConflictResolutionPolicy collisionConflictResolutionPolicy,
    ChangeBatch sourceChanges,
    IChangeDataRetriever changeDataRetriever,
    SyncKnowledge destinationKnowledge,
    ForgottenKnowledge destinationForgottenKnowledge,
    INotifyingChangeApplierTarget changeApplierTarget,
    IConflictLogAccess conflictLogAccess,
    SyncSessionContext syncSessionState,
    SyncCallbacks syncCallback
)
public:
void ApplyChanges (
    ConflictResolutionPolicy resolutionPolicy, 
    CollisionConflictResolutionPolicy collisionConflictResolutionPolicy, 
    ChangeBatch^ sourceChanges, 
    IChangeDataRetriever^ changeDataRetriever, 
    SyncKnowledge^ destinationKnowledge, 
    ForgottenKnowledge^ destinationForgottenKnowledge, 
    INotifyingChangeApplierTarget^ changeApplierTarget, 
    IConflictLogAccess^ conflictLogAccess, 
    SyncSessionContext^ syncSessionState, 
    SyncCallbacks^ syncCallback
)
public void ApplyChanges (
    ConflictResolutionPolicy resolutionPolicy, 
    CollisionConflictResolutionPolicy collisionConflictResolutionPolicy, 
    ChangeBatch sourceChanges, 
    IChangeDataRetriever changeDataRetriever, 
    SyncKnowledge destinationKnowledge, 
    ForgottenKnowledge destinationForgottenKnowledge, 
    INotifyingChangeApplierTarget changeApplierTarget, 
    IConflictLogAccess conflictLogAccess, 
    SyncSessionContext syncSessionState, 
    SyncCallbacks syncCallback
)
public function ApplyChanges (
    resolutionPolicy : ConflictResolutionPolicy, 
    collisionConflictResolutionPolicy : CollisionConflictResolutionPolicy, 
    sourceChanges : ChangeBatch, 
    changeDataRetriever : IChangeDataRetriever, 
    destinationKnowledge : SyncKnowledge, 
    destinationForgottenKnowledge : ForgottenKnowledge, 
    changeApplierTarget : INotifyingChangeApplierTarget, 
    conflictLogAccess : IConflictLogAccess, 
    syncSessionState : SyncSessionContext, 
    syncCallback : SyncCallbacks
)

Parámetros

  • resolutionPolicy
    Directiva que se utiliza para resolver conflictos.
  • collisionConflictResolutionPolicy
    Directiva que se usa para resolver conflictos de restricción de colisión.
  • sourceChanges
    Lote de cambios del proveedor de origen.
  • changeDataRetriever
    Objeto que se puede usar para recuperar datos de elemento de la réplica de origen.
  • destinationKnowledge
    Conocimiento de la réplica de destino.
  • destinationForgottenKnowledge
    Conocimiento olvidado de la réplica de destino.
  • changeApplierTarget
    Objeto al que se llamará para guardar cambios y conflictos.
  • conflictLogAccess
    Registro de conflictos donde se almacenan los conflictos diferidos y temporales.
  • syncSessionState
    Información de estado sobre la sesión actual.
  • syncCallback
    Devoluciones de llamada que recibirán notificaciones sobre eventos de aplicación de cambios.

Notas

Este método detecta los conflictos de simultaneidad que se producen entre los cambios que se envían en sourceChanges y los elementos correspondientes de la réplica de destino. Resuelve los conflictos de simultaneidad según la directiva especificada por resolutionPolicy. Cuando el proveedor de destino notifica conflictos de restricción de colisión, este método los resuelve según la directiva especificada por collisionConflictResolutionPolicy. Si no hay ninguna directiva de resolución de conflictos establecida, este método notifica a la aplicación un conflicto y la aplicación especifica una acción de resolución de conflictos. Si es necesario, este método llama después a los métodos de changeApplierTarget para guardar los cambios en la réplica de destino y los conflictos no resueltos.

Para obtener la versión de destino, este método llama a TryGetDestinationVersion en changeApplierTarget para cada elemento de sourceChanges.

El aplicador de cambios ayuda a administrar el registro de conflictos especificado por conflictLogAccess, resolviendo los conflictos del registro y quitando los conflictos obsoletos del registro. El aplicador de cambios también puede utilizar el registro de conflictos para almacenar los conflictos temporales que se producen como consecuencia de la combinación de conflictos de restricción. Cualquier conflicto temporal agregado al registro se quitará antes de que finalice la sesión de sincronización.

Vea también

Referencia

NotifyingChangeApplier Clase
NotifyingChangeApplier Miembros
Microsoft.Synchronization Espacio de nombres