Partager via


Méthode INotifyingChangeApplierTarget2.SaveConstraintConflict

En cas de substitution dans une classe dérivée, enregistre les informations relatives aux éléments qui sont impliqués dans un conflit de contraintes.

Espace de noms: Microsoft.Synchronization
Assembly: Microsoft.Synchronization (dans microsoft.synchronization.dll)

Syntaxe

'Déclaration
Sub SaveConstraintConflict ( _
    conflictingChange As ItemChange, _
    conflictingItemId As SyncId, _
    reason As ConstraintConflictReason, _
    conflictingChangeData As Object, _
    conflictingChangeKnowledge As SyncKnowledge, _
    temporary As Boolean _
)
'Utilisation
Dim instance As INotifyingChangeApplierTarget2
Dim conflictingChange As ItemChange
Dim conflictingItemId As SyncId
Dim reason As ConstraintConflictReason
Dim conflictingChangeData As Object
Dim conflictingChangeKnowledge As SyncKnowledge
Dim temporary As Boolean

instance.SaveConstraintConflict(conflictingChange, conflictingItemId, reason, conflictingChangeData, conflictingChangeKnowledge, temporary)
void SaveConstraintConflict (
    ItemChange conflictingChange,
    SyncId conflictingItemId,
    ConstraintConflictReason reason,
    Object conflictingChangeData,
    SyncKnowledge conflictingChangeKnowledge,
    bool temporary
)
void SaveConstraintConflict (
    ItemChange^ conflictingChange, 
    SyncId^ conflictingItemId, 
    ConstraintConflictReason reason, 
    Object^ conflictingChangeData, 
    SyncKnowledge^ conflictingChangeKnowledge, 
    bool temporary
)
void SaveConstraintConflict (
    ItemChange conflictingChange, 
    SyncId conflictingItemId, 
    ConstraintConflictReason reason, 
    Object conflictingChangeData, 
    SyncKnowledge conflictingChangeKnowledge, 
    boolean temporary
)
function SaveConstraintConflict (
    conflictingChange : ItemChange, 
    conflictingItemId : SyncId, 
    reason : ConstraintConflictReason, 
    conflictingChangeData : Object, 
    conflictingChangeKnowledge : SyncKnowledge, 
    temporary : boolean
)

Paramètres

  • conflictingChange
    Métadonnées d'élément de la modification en conflit du fournisseur de source.
  • conflictingItemId
    ID de l'élément du réplica de destination qui est en conflit avec l'élément spécifié par conflictingChange.
  • reason
    Raison pour laquelle le conflit s'est produit.
  • conflictingChangeData
    Données d'élément de la modification en conflit.
  • conflictingChangeKnowledge
    Connaissance à acquérir si cette modification est appliquée. Elle doit être enregistrée avec la modification.
  • temporary
    true s'il s'agit d'un conflit temporaire. Sinon, false.

Notes

Si la modification représentée par ce conflit est appliquée à un réplica, conflictingChangeKnowledge doit être combiné à la connaissance de ce réplica.

Exemple

L'exemple suivant montre comment enregistrer un conflit de contraintes temporaire à l'aide d'un objet MemoryConflictLog.

public void SaveConstraintConflict(ItemChange conflictingChange, SyncId conflictingItemId, 
    ConstraintConflictReason reason, object conflictingChangeData, SyncKnowledge conflictingChangeKnowledge, 
    bool temporary)
{
    if (!temporary)
    {
        // The in-memory conflict log is used, so if a non-temporary conflict is saved, it's
        // an error.
        throw new NotImplementedException("SaveConstraintConflict can only save temporary conflicts.");
    }
    else
    {
        // For temporary conflicts, just pass on the data and let the conflict log handle it.
        _memConflictLog.SaveConstraintConflict(conflictingChange, conflictingItemId, reason, 
            conflictingChangeData, conflictingChangeKnowledge, temporary);
    }
}

Voir aussi

Référence

Interface INotifyingChangeApplierTarget2
Membres INotifyingChangeApplierTarget2
Espace de noms Microsoft.Synchronization