Share via


Énumération ConflictType

Définit les types de conflits qui peuvent se produire au cours de la synchronisation.

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

Syntaxe

'Déclaration
Public Enumeration ConflictType
'Utilisation
Dim instance As ConflictType
public enum ConflictType
public enum class ConflictType
public enum ConflictType
public enum ConflictType

Membres

  Nom de membre Description
ClientDeleteServerUpdate Le client a supprimé une ligne que le serveur a mise à jour. 
ClientInsertServerInsert Le client et le serveur ont tous les deux inséré une ligne qui possède la même valeur de clé primaire. Cela a généré une violation de clé primaire. 
ClientUpdateServerDelete Le serveur a supprimé une ligne que le client a mise à jour. 
ClientUpdateServerUpdate Le client et le serveur ont mis à jour la même ligne. 
ErrorsOccurred Le magasin client ou serveur (habituellement une base de données) a levé une exception lors de l'application d'une modification. 
Unknown Le fournisseur de synchronisation client peut classifier tous les conflits qu'il rencontre, à la différence du fournisseur de synchronisation serveur. Par conséquent, certains conflits sont classés en tant que Unknown

Notes

Un conflit se produit lorsque la même ligne est insérée, mise à jour ou supprimée à plusieurs emplacements entre les synchronisations. Les conflits sont toujours définis comme s'étant produits entre le serveur et le client en cours de synchronisation. Cependant, cela ne veut pas dire que la modification conflictuelle sur le serveur provient nécessairement du 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

Espace de noms Microsoft.Synchronization.Data