Compartilhar via


Interface ISqlSyncMetadataStore

Representa um repositório de metadados que usa um banco de dados leve para repositório.

interface ISqlSyncMetadataStore : ISyncMetadataStore2

Membros

Métodos ISqlSyncMetadataStore Descrição

ISqlSyncMetadataStore::CreateStore

Cria um arquivo de repositório de metadados e um objeto de repositório de metadados para representá-lo.

ISqlSyncMetadataStore::OpenStore

Abre um arquivo de repositório de metadados existente e retorna um objeto de repositório de metadados que o representa.

ISqlSyncMetadataStore::Dispose

Libera os recursos usados pelo objeto ISqlSyncMetadataStore.

Comentários

O serviço de armazenamento de metadados oferece uma implementação completa da API desse serviço que usa um banco de dados leve para armazenar todos os metadados necessários para a sincronização em um arquivo de banco de dados, em um determinado local no sistema de arquivos. O ponto de entrada nessa implementação é ISqlSyncMetadataStore. Para obter um objeto que implementa esta interface, passe CLSID_SyncMetadataStore e IID_ISqlSyncMetadataStore para a função CoCreateInstance.

Para usar a implementação da API do serviço de armazenamento de metadados

  1. Crie um novo repositório de metadados usando ISqlSyncMetadataStore::CreateStore ou abra um repositório de metadados existente usando ISqlSyncMetadataStore::OpenStore.

  2. Para criar metadados para uma réplica especificada, use ISyncMetadataStore::InitializeReplicaMetadata ou abra os metadados da réplica existente usando ISyncMetadataStore::GetReplicaMetadata. GetReplicaMetadata retorna uma implementação de IReplicaMetadata que pode acessar metadados de réplica armazenados no repositório de metadados.

  3. Inicie uma transação de banco de dados usando ISyncMetadataStore::BeginTransaction. Isso ajuda a garantir que, no caso de alterações feitas nos metadados depois que este método é chamado, todas sejam salvas no banco de dados ou nenhuma seja salva.

  4. Crie novos metadados do item usando IReplicaMetadata::CreateNewItemMetadata ou localize metadados para itens específicos usando métodos como IReplicaMetadata::FindItemMetadataByGlobalId. Esses métodos retornam uma implementação de IItemMetadata que pode acessar os metadados do item do repositório de metadados.

  5. Faça alterações nos metadados do item e salve-as usando IReplicaMetadata::SaveItemMetadata.

  6. Confirme as alterações no repositório de metadados chamando ISyncMetadataStore::CommitTransaction ou descarte as alterações chamando ISyncMetadataStore::RollbackTransaction.

Esta implementação da API também fornece métodos no objeto IReplicaMetadata que ajudam a detectar os itens excluídos do repositório de itens. Por exemplo, IReplicaMetadata::GetUnreportedItems retorna uma lista de itens que existem no repositório de metadados porém não existem no repositório de itens. Um provedor pode marcar os itens dessa lista como marcas de exclusão no repositório de metadados.

Requisitos

Cabeçalho: Metastore.h

Consulte também

Conceitos

Componentes do Sync Framework Metadata Storage Service
Guia de introdução ao repositório de metadados