Compartir a través de


Microsoft.Synchronization.MetadataStorage Espacio de nombres

Metadata Storage Service proporciona compatibilidad para almacenar y controlar metadatos de sincronización.

Metadata Storage Service define muchas de sus clases como abstractas de modo que permiten a los desarrolladores de servicios de almacenamiento implementar un conjunto personalizado de clases para almacenar metadatos en cualquier tipo de almacén de datos.

Metadata Storage Service también proporciona una implementación de las clases que usan una base de datos ligera para almacenar metadatos de sincronización en un archivo de base de datos único en un sistema de archivos.

La clase principal para todos los almacenes de metadatos es MetadataStore. Esta clase base abstracta contiene métodos para inicializar y obtener metadatos de réplica en el almacén de metadatos, e iniciar y detener transacciones en la base de datos. Las clases que invalidan esta clase base probablemente proporcionarán métodos para crear y abrir almacenes de metadatos, como SqlMetadataStore. Esta clase contiene métodos para crear y abrir un almacén de metadatos.

Los metadatos de réplica se inicializan en el almacén de metadatos mediante InitializeReplicaMetadata. El parámetro FieldSchema de este método permite crear un conjunto de campos personalizados. Estos campos se pueden usar para almacenar metadatos adicionales para los elementos del almacén de metadatos. El parámetro IndexSchema permite definir conjuntos de campos como índices. Éstos se pueden usar para localizar eficazmente elementos en el almacén de metadatos.

La clase ReplicaMetadata encapsula todos los metadatos para una réplica concreta. Se puede tener acceso a los metadatos de réplica mediante el uso de miembros como GetKnowledge y ReplicaId.

ReplicaMetadata también contiene DeleteDetector. Un proveedor puede usar el objeto contenido en esta propiedad para detectar qué elementos se han eliminado del almacén de elementos y deberían marcarse como eliminados en el almacén de metadatos.

Los metadatos del elemento se pueden encontrar en el almacén de metadatos usando los métodos de ReplicaMetadata para buscar por identificador de elemento o por campos indizados, como FindItemMetadataById o FindItemMetadataByIndexedFields. La clase ItemMetadata encapsula todos los metadatos para un elemento determinado. Esta clase contiene metadatos de sincronización estándar, como ChangeVersion, CreationVersion, GlobalId y IsDeleted. Esta clase también contiene varios métodos que se pueden usar para tener acceso a los campos personalizados que se definieron cuando se inicializaron los metadatos de la réplica.

Clases

  Clase Descripción
Public class ChangeUnitMetadata Representa los metadatos asociados a una unidad de cambio contenida en un elemento en el ámbito de sincronización.
Public class DeleteDetector Cuando se implementa mediante una clase derivada, DeleteDetector determina qué elementos se eliminaron de una réplica. Estos elementos se deben marcar como eliminados en el almacén de metadatos.
Public class ExplicitTransactionRequiredException Excepción que se produce cuando se llama a un método que requiere que se haya iniciado una transacción explícita en el almacén de metadatos.
Public class FieldSchema Contiene información de esquema que define un campo personalizado de un elemento del almacén de metadatos.
Public class IndexSchema Representa un índice de una o varias columnas que puede utilizarse para buscar más eficazmente elementos que están en el almacén de metadatos.
Public class ItemMetadata Cuando se invalida, representa los metadatos asociados a un elemento en el ámbito de sincronización.
Public class ItemMetadataNotFoundException Excepción que se produce cuando no se puede encontrar en el almacén de metadatos un elemento que tiene el identificador o el valor del campo personalizado especificado.
Public class KeyUniquenessException Excepción que se produce cuando se intenta guardar un elemento que tiene un identificador no válido o duplicado.
Public class MetadataFieldNotFoundException Excepción que se produce cuando no existe el campo personalizado especificado.
Public class MetadataStorageEngineException Excepción que se produce cuando se genera un error en un operación en el motor de almacenamiento de metadatos.
Public class MetadataStore Cuando se invalida, representa un almacén de metadatos y proporciona métodos para obtener un objeto de metadatos de réplica. El objeto de metadatos de réplica se usa para tener acceso a los metadatos de una réplica concreta. Ésta es la clase base abstracta para todos los almacenes de metadatos que usan la API de Metadata Storage Service.
Public class MetadataStoreException La clase base para todas las excepciones de almacenamiento de metadatos.
Public class MetadataStoreInvalidOperationException Excepción que se produce cuando la llamada a un método no es válida para el estado actual del objeto.
Public class MetadataStoreProviderVersionMismatchException Excepción que se produce cuando se llama a DeserializeReplicaMetadata y la versión de compatibilidad de proveedor esperada que se ha especificado no coincide con la versión de proveedor almacenada en los metadatos serializados.
Public class MultipleReplicasInStoreException Excepción que se produce cuando se llama a GetSingleReplicaMetadata y el almacén de metadatos contiene metadatos para más de una réplica.
Public class ReplicaMetadata Cuando se invalida, proporciona acceso a los metadatos de réplica y los metadatos del elemento en el almacén de metadatos. ReplicaMetadata también proporciona servicios para detección de elementos eliminados y aplicaciones auxiliares para implementar métodos de proveedores de sincronización.
Public class ReplicaMetadataAlreadyExistsException Excepción que se produce cuando se realiza un intento de crear nuevos metadatos de réplica en un almacén de metadatos pero ya existen metadatos para esa réplica en el almacén de metadatos.
Public class ReplicaMetadataInUseException Excepción que se produce cuando se intenta crear más de una instancia activa de ReplicaMetadata para un identificador de réplica determinado.
Public class ReplicaMetadataNotFoundException Excepción que se produce cuando no existen metadatos de réplica en el almacén de metadatos para el identificador de réplica especificado.
Public class SqlMetadataStore Representa un almacén de metadatos que se implementa usando una base de datos ligera para almacenar los metadatos.
Public class SqlSyncFieldValue Representa el valor de un campo personalizado de un elemento.
Public class SqlSyncMetadataStoreSerializer Serializa y deserializa los metadatos para una réplica entre un formato de archivo de metadatos canónico y los formatos de almacenamiento de Metadata Storage Service específicos de la versión.
Public class SyncFieldValue Cuando se invalida en una clase derivada, representa el valor de un campo personalizado de un elemento.
Public class SyncMetadataStoreSerializer Cuando lo invalida una clase derivada, serializa y deserializa metadatos para una réplica.
Public class UpgradeStartEventArgs Proporciona datos para el evento MetadataStoreUpgradeStart.
Public class VersionNotSupportedException Excepción que se produce cuando se intenta obtener metadatos de réplica de un almacén de metadatos, pero la implementación del almacén de metadatos no admite la versión de los metadatos.

Interfaces

  Interfaz Descripción
Public interface IProviderUpgradeCallback Cuando lo implementa una clase derivada, representa métodos a los que puede llamar Sync Framework para informar a un proveedor sobre los eventos que se producen durante una actualización del almacén de metadatos que se inicia porque la versión del proveedor ha cambiado.

Delegados

  Delegado Descripción
Public delegate ReplicaMetadata.ItemFilterCallback Representa el método que determinará si debería incluirse un cambio de elemento en un lote de cambios.