Condividi tramite


Classe DeleteDetector

Se implementato da una classe derivata, DeleteDetector determina quali elementi sono stati eliminati da una replica. Questi elementi devono essere contrassegnati come eliminati nell'archivio dei metadati.

Spazio dei nomi: Microsoft.Synchronization.MetadataStorage
Assembly: Microsoft.Synchronization.MetadataStorage (in microsoft.synchronization.metadatastorage.dll)

Sintassi

'Dichiarazione
Public MustInherit Class DeleteDetector
'Utilizzo
Dim instance As DeleteDetector
public abstract class DeleteDetector
public ref class DeleteDetector abstract
public abstract class DeleteDetector
public abstract class DeleteDetector

Osservazioni

Questa classe consente a un provider di eseguire la manutenzione dei metadati quando il relativo archivio non tiene traccia delle eliminazioni.

Per recuperare un elenco di tutti gli elementi rilevati come eliminati dall'archivio, chiamare FindUnreportedItems. L'elenco può essere enumerato e ogni elemento può essere contrassegnato come eliminato nell'archivio dei metadati. Questa operazione deve essere eseguita prima dell'avvio di una sessione di sincronizzazione per assicurarsi che i metadati siano aggiornati.

È disponibile una voce di metadati attiva per un elemento quando l'elemento è stato modificato e successivamente è stato chiamato ReplicaMetadata.SaveItemMetadata per salvare le modifiche oppure quando è stato chiamato ReportLiveItemByIndexedField o ReportLiveItemByIndexedFields per un elemento non modificato, ma ancora attivo. Tenere presente che chiamando ReplicaMetadata.SaveItemMetadata per un elemento non modificato, tale elemento non viene contrassegnato come attivo.

Una chiamata a MarkAllItemsUnreported reimposta il rilevamento delle eliminazioni per i passaggi di rilevamento futuri.

Per utilizzare l'implementazione del servizio di archiviazione dei metadati di questa classe, utilizzare SqlMetadataStore per creare o aprire una classe ReplicaMetadata. DeleteDetector è accessibile tramite ReplicaMetadata.DeleteDetector.

Note per gli eredi: Quando si eredita da DeleteDetector, è necessario eseguire l'override dei seguenti membri:

Per rilevare gli elementi eliminati, un'implementazione di DeleteDetector deve utilizzare l'algoritmo di alto livello seguente:

  1. Registrare tutti gli elementi segnalati come attivi. Un elemento viene segnalato come attivo quando i relativi metadati vengono modificati e salvati o quando il provider lo segnala come attivo in modo esplicito.

  2. Le voci dei metadati non attive devono essere segnalate come eliminate.

Gerarchia di ereditarietà

System.Object
  Microsoft.Synchronization.MetadataStorage.DeleteDetector

Thread Safety

Tutti i membri statici pubblici (Shared in Visual Basic) di questo tipo sono thread safe. I membri di istanza non hanno garanzia di essere thread safe.

Vedere anche

Riferimento

Membri DeleteDetector
Spazio dei nomi Microsoft.Synchronization.MetadataStorage

Altre risorse

Rilevamento di elementi eliminati