ConflictType Enumeración
Define los tipos de conflicto que pueden producirse durante la sincronización.
Espacio de nombres: Microsoft.Synchronization.Data
Ensamblado: Microsoft.Synchronization.Data (en microsoft.synchronization.data.dll)
Sintaxis
'Declaración
Public Enumeration ConflictType
'Uso
Dim instance As ConflictType
public enum ConflictType
public enum class ConflictType
public enum ConflictType
public enum ConflictType
Miembros
Nombre del miembro | Descripción | |
---|---|---|
ClientDeleteServerUpdate | El cliente eliminó una fila que el servidor actualizó. | |
ClientInsertServerInsert | El cliente y el servidor insertaron una fila que tiene el mismo valor en la clave principal. Se originó así una infracción de la clave principal. | |
ClientUpdateServerDelete | El servidor eliminó una fila que el servidor actualizó. | |
ClientUpdateServerUpdate | Tanto el cliente como el servidor actualizaron la misma fila. | |
ErrorsOccurred | El almacén de cliente o de servidor (típicamente una base de datos) produjeron una excepción al aplicar un cambio. | |
Unknown | El proveedor de sincronización de cliente puede clasificar todos los conflictos que encuentre, pero el proveedor de sincronización de servidor no puede hacerlo. Por lo tanto, algunos conflictos se clasifican como Unknown. |
Notas
Un conflicto se produce al insertar, actualizar o eliminar la misma fila en más de un lugar entre sincronizaciones. Los conflictos se definen siempre como sucedidos entre el servidor y el cliente actualmente en sincronización. No obstante, esto no significa que un cambio en conflicto en el servidor se originara necesariamente en el servidor. Para obtener más información, vea Controlar conflictos de datos y errores.
Ejemplo
En el ejemplo de código siguiente se especifica un valor de RetryWithForceWrite
para los conflictos de actualización del cliente y eliminación del servidor. Para consultar este código en el contexto de un ejemplo completo, vea Controlar conflictos de datos y errores.
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