DeleteDetector-Klasse
Bei der Implementierung durch eine abgeleitete Klasse ermittelt DeleteDetector, welche Elemente aus einem Replikat gelöscht wurden. Diese Elemente müssen im Metadatenspeicher als gelöscht markiert werden.
Namespace: Microsoft.Synchronization.MetadataStorage
Assembly: Microsoft.Synchronization.MetadataStorage (in microsoft.synchronization.metadatastorage.dll)
Syntax
'Declaration
Public MustInherit Class DeleteDetector
'Usage
Dim instance As DeleteDetector
public abstract class DeleteDetector
public ref class DeleteDetector abstract
public abstract class DeleteDetector
public abstract class DeleteDetector
Hinweise
Mit dieser Klasse kann ein Anbieter auch Metadaten verwalten, wenn der Speicher Löschvorgänge nicht nachverfolgt.
Rufen Sie FindUnreportedItems auf, um eine Liste der Elemente aufzurufen, die aus dem Speicher gelöscht wurden. Daraufhin kann diese Liste durchlaufen und jedes Element im Metadatenspeicher als gelöscht markiert werden. Dies sollte vor Beginn einer Synchronisierungssitzung durchgeführt werden, um sicherzustellen, dass die Metadaten aktuell sind.
Für ein Element ist ein aktiver Metadateneintrag vorhanden, wenn das Element geändert und daraufhin ReplicaMetadata.SaveItemMetadata zum Speichern des geänderten Elements aufgerufen wurde, oder wenn ReportLiveItemByIndexedField bzw. ReportLiveItemByIndexedFields für ein nicht geändertes, jedoch noch aktives Element aufgerufen wurde. Beachten Sie, dass durch einen Aufruf von ReplicaMetadata.SaveItemMetadata für ein nicht geändertes Element dieses Element nicht als aktiv markiert wird.
Ein Aufruf von MarkAllItemsUnreported setzt die Löscherkennung für zukünftige Erkennungsdurchläufe zurück.
Um die Metadaten-Speicherdienst-Implementierung dieser Klasse zu verwenden, erstellen oder öffnen Sie mithilfe von SqlMetadataStore eine ReplicaMetadata-Klasse. Der Zugriff auf DeleteDetector kann über ReplicaMetadata.DeleteDetector erfolgen.
Hinweise für Erben: Wenn von DeleteDetector geerbt wird, müssen Sie die folgenden Member überschreiben:
FindUnreportedItems
MarkAllItemsUnreported
ReportLiveItemByIndexedField
ReportLiveItemByIndexedFields.
Zur Erkennung gelöschter Elemente muss eine Implementierung von DeleteDetector den folgenden allgemeinen Algorithmus verwenden:
Aufzeichnen aller Elemente, die als aktiv gemeldet werden. Ein Element wird als aktiv gemeldet, wenn dessen Metadaten geändert oder gespeichert wurden, oder wenn der Anbieter es explizit als aktiv meldet.
Metadateneinträge, die nicht aktiv sind, müssen als gelöscht gemeldet werden.
Vererbungshierarchie
System.Object
Microsoft.Synchronization.MetadataStorage.DeleteDetector
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Siehe auch
Verweis
DeleteDetector-Member
Microsoft.Synchronization.MetadataStorage-Namespace