Condividi tramite


Enumerazione CONSTRAINT_CONFLICT_REASON

Rappresenta i motivi per cui si può verificare un conflitto di vincoli.

typedef enum
{
  CCR_OTHER,
  CCR_COLLISION,
  CCR_NOPARENT,
  CCR_IDENTITY
} CONSTRAINT_CONFLICT_REASON;

Membri

Termine

Definizione

CCR_OTHER

L'elemento o l'unità di modifica viola altri vincoli della replica di destinazione. Facoltativamente, il provider può specificare l'ID dell'elemento in conflitto come l'ID elemento in conflitto.

CCR_COLLISION

Questo elemento non può essere salvato perché è in conflitto con un altro elemento presente nell'archivio, ad esempio un elemento avente lo stesso nome di un elemento esistente. Il provider deve specificare l'ID dell'elemento di destinazione come ID elemento in conflitto.

CCR_NOPARENT

L'elemento non può essere salvato nell'archivio dati gerarchico perché richiede un elemento padre che non esiste nell'archivio. Facoltativamente, il provider può specificare l'ID dell'elemento padre mancante come ID elemento in conflitto.

CCR_IDENTITY

La replica di origine e quella di destinazione non concordano sull'identità di un elemento. Ad esempio, la replica X risolve un conflitto di collisione tra elementi con ID id1 e id2 unendo gli elementi e assegnando id1 all'elemento unito. La replica Y risolve un conflitto di collisione tra elementi con ID id1 e id2 ridenominando l'elemento identificato da id1 e mantenendo entrambi gli elementi. La replica X invia l'elemento unito identificato da id1 e una rimozione definitiva tramite unione che indica che id2 è stato unito a id1. Il conflitto su id1 viene rilevato e risolto come un conflitto di concorrenza. Il conflitto su id2 viene rilevato e segnalato all'applicazione di sincronizzazione come un conflitto di identità specificando un motivo del conflitto di CCR_IDENTITY. L'applicazione determina se risolvere il conflitto mantenendo la modifica di origine o la modifica di destinazione.

Osservazioni

Il provider di destinazione utilizza un membro di CONSTRAINT_CONFLICT_REASON per specificare il motivo di un conflitto di vincoli quando segnala un conflitto di vincoli all'oggetto di applicazione modifiche. Per ulteriori informazioni sui conflitti di vincoli, vedere Rilevamento e risoluzione dei conflitti di vincoli.

Requisiti

Intestazione: Synchronization.h

Vedere anche

Concetti

Componenti principali di Sync Framework