Enumerazione SYNC_CONSTRAINT_RESOLVE_ACTION
Rappresenta le azioni intraprese per risolvere un conflitto di vincoli specifico.
typedef enum
{
SCRA_DEFER,
SCRA_ACCEPT_DESTINATION_PROVIDER,
SCRA_ACCEPT_SOURCE_PROVIDER,
SCRA_TRANSFER_AND_DEFER,
SCRA_MERGE,
SCRA_RENAME_SOURCE,
SCRA_RENAME_DESTINATION
} SYNC_CONSTRAINT_RESOLVE_ACTION;
Membri
Termine |
Definizione |
SCRA_DEFER |
Ignorare il conflitto e non applicare la modifica. L'oggetto di applicazione modifiche non passa i dati relativi al conflitto al provider di destinazione. |
SCRA_ACCEPT_DESTINATION_PROVIDER |
La modifica apportata nella replica di destinazione prevale sempre. L'oggetto di applicazione modifiche passa la modifica di origine al metodo ISynchronousNotifyingChangeApplierTarget::SaveChange e specifica un'azione di salvataggio di SSA_DELETE_AND_STORE_TOMBSTONE. Il provider di destinazione crea una rimozione definitiva per la modifica di origine. Quando la destinazione agirà come origine in una sincronizzazione successiva, enumererà una modifica che rappresenta l'eliminazione dell'elemento di origine e lo rimuoverà dalla community di sincronizzazione. |
SCRA_ACCEPT_SOURCE_PROVIDER |
La modifica apportata nella replica di origine prevale sempre. L'oggetto di applicazione modifiche passa la modifica al metodo SaveChange e specifica un'azione di salvataggio di SSA_DELETE_CONFLICTING_AND_SAVE_SOURCE_ITEM. La modifica di origine viene applicata alla replica di destinazione e l'elemento di destinazione in conflitto viene eliminato dalla replica di destinazione. |
SCRA_TRANSFER_AND_DEFER |
Registrare il conflitto e non applicare la modifica. L'oggetto di applicazione modifiche passa i dati relativi al conflitto al metodo ISynchronousNotifyingChangeApplierTarget2::SaveConstraintConflict che salva il conflitto in un log. Per ulteriori informazioni sulla registrazione dei conflitti, vedere Registrazione e gestione di conflitti. |
SCRA_MERGE |
I dati dell'elemento di origine vengono combinati con l'elemento di destinazione. L'oggetto di applicazione modifiche passa i dati di modifica della replica di origine al metodo SaveChange e specifica un'azione di salvataggio di SSA_CHANGE_ID_UPDATE_VERSION_AND_MERGE_DATA. Per informazioni dettagliate, vedere la sezione Unione di elementi in conflitto di Rilevamento e risoluzione dei conflitti di vincoli. |
SCRA_RENAME_SOURCE |
La modifica inviata dal provider di origine viene rinominata in modo che non sia più in conflitto con l'elemento in conflitto nella replica di destinazione e la modifica di origine viene applicata alla replica di destinazione. L'oggetto di applicazione modifiche passa la modifica al metodo SaveChange e specifica un'azione di salvataggio di SSA_RENAME_SOURCE_AND_UPDATE_VERSION_AND_DATA. |
SCRA_RENAME_DESTINATION |
L'elemento in conflitto nella replica di destinazione viene rinominato in modo che non sia più in conflitto con la modifica inviata dal provider di origine e la modifica di origine viene applicata alla replica di destinazione. L'oggetto di applicazione modifiche passa la modifica al metodo SaveChange e specifica un'azione di salvataggio di SSA_RENAME_DESTINATION_AND_UPDATE_VERSION_AND_DATA. |
Osservazioni
I membri di SYNC_CONSTRAINT_RESOLVE_ACTION specificano l'azione che l'oggetto di applicazione modifiche intraprende per risolvere i conflitti di vincoli. I conflitti di vincoli violano i vincoli imposti su elementi o unità di modifica, ad esempio la relazione di cartelle o il percorso di dati con la stessa denominazione all'interno di un file system. Quando vengono specificati criteri di risoluzione dei conflitti di collisione, l'azione di risoluzione dei conflitti di vincoli viene specificata dall'oggetto di applicazione modifiche quando si verifica un conflitto di vincoli di collisione. In caso contrario, l'azione di risoluzione dei conflitti di vincoli viene specificata dall'applicazione di sincronizzazione quando riceve una notifica di un conflitto di vincoli.
Per ulteriori informazioni sui conflitti di vincoli, vedere Rilevamento e risoluzione dei conflitti di vincoli.
Requisiti
Intestazione: Synchronization.h