Partager via


Propriété ApplyChangeFailedEventArgs.Action

Obtient ou définit une valeur d'énumération ApplyAction qui spécifie l'action permettant de gérer le conflit.

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

Syntaxe

'Déclaration
Public Property Action As ApplyAction
'Utilisation
Dim instance As ApplyChangeFailedEventArgs
Dim value As ApplyAction

value = instance.Action

instance.Action = value
public ApplyAction Action { get; set; }
public:
property ApplyAction Action {
    ApplyAction get ();
    void set (ApplyAction value);
}
/** @property */
public ApplyAction get_Action ()

/** @property */
public void set_Action (ApplyAction value)
public function get Action () : ApplyAction

public function set Action (value : ApplyAction)

Valeur de propriété

Valeur d'énumération ApplyAction qui spécifie l'action permettant de gérer le conflit.

Notes

S'il est impossible d'appliquer une ligne durant la synchronisation, l'événement ApplyChangeFailed est déclenché. L'objet ApplyChangeFailedEventArgs fournit des informations sur l'erreur ou le conflit à l'origine de l'échec. Dans un gestionnaire pour l'événement, vous pouvez indiquer si le fournisseur de synchronisation doit essayer d'appliquer à nouveau la ligne. L'écriture forcée des modifications sur le client est gérée par le fournisseur de synchronisation client. L'écriture forcée des modifications sur le serveur nécessite une logique dans le code qui applique les modifications sur le serveur. Pour plus d'informations, consultez Procédure : gérer les conflits de données et les erreurs.

Exemple

L'exemple de code suivant spécifie une valeur de RetryWithForceWrite pour les conflits de mise à jour du client/suppression du serveur. Pour afficher ce code dans le contexte d'un exemple complet, consultez Procédure : gérer les conflits de données et les erreurs.

if (e.Conflict.ConflictType == ConflictType.ClientUpdateServerDelete)
{

    //For client-update/server-delete conflicts, we force the client 
    //change to be applied at the server. The stored procedure specified for 
    //customerSyncAdapter.UpdateCommand accepts the @sync_force_write parameter
    //and includes logic to handle this case.
    Console.WriteLine(String.Empty);
    Console.WriteLine("***********************************");
    Console.WriteLine("A client update / server delete conflict was detected.");

    e.Action = ApplyAction.RetryWithForceWrite;
    
    Console.WriteLine("The client change was retried at the server with RetryWithForceWrite.");
    Console.WriteLine("***********************************"); 
    Console.WriteLine(String.Empty);
 
}
If e.Conflict.ConflictType = ConflictType.ClientUpdateServerDelete Then

    'For client-update/server-delete conflicts, we force the client 
    'change to be applied at the server. The stored procedure specified for 
    'customerSyncAdapter.UpdateCommand accepts the @sync_force_write parameter
    'and includes logic to handle this case.
    Console.WriteLine(String.Empty)
    Console.WriteLine("***********************************")
    Console.WriteLine("A client update / server delete conflict was detected.")

    e.Action = ApplyAction.RetryWithForceWrite

    Console.WriteLine("The client change was retried at the server with RetryWithForceWrite.")
    Console.WriteLine("***********************************")
    Console.WriteLine(String.Empty)
End If

Voir aussi

Référence

Classe ApplyChangeFailedEventArgs
Membres ApplyChangeFailedEventArgs
Espace de noms Microsoft.Synchronization.Data