共用方式為


ISqlSyncMetadataStore 介面

表示使用輕量型資料庫進行儲存的中繼資料存放區。

interface ISqlSyncMetadataStore : ISyncMetadataStore2

成員

ISqlSyncMetadataStore 方法 描述

ISqlSyncMetadataStore::CreateStore

建立中繼資料存放區檔案以及代表它的中繼資料存放區物件。

ISqlSyncMetadataStore::OpenStore

開啟現有的中繼資料存放區檔案,並傳回代表它的中繼資料存放區物件。

ISqlSyncMetadataStore::Dispose

釋放 ISqlSyncMetadataStore 物件所使用的資源。

備註

中繼資料儲存服務提供了使用輕量型資料庫之中繼資料儲存服務 API 的完整實作,以便將進行同步處理所需的所有中繼資料,儲存於檔案系統中指定位置的某個資料庫檔案。此實作的進入點為 ISqlSyncMetadataStore。若要取得實作此介面的物件,請將 CLSID_SyncMetadataStoreIID_ISqlSyncMetadataStore 傳遞給 CoCreateInstance 函式。

使用 Metadata Storage Service API 的實作

  1. 使用 ISqlSyncMetadataStore::CreateStore 建立新的中繼資料存放區,或是使用 ISqlSyncMetadataStore::OpenStore 開啟現有的中繼資料存放區。

  2. 使用 ISyncMetadataStore::InitializeReplicaMetadata 來為指定的複寫建立中繼資料,或是使用 ISyncMetadataStore::GetReplicaMetadata 來開啟現有的複寫中繼資料。GetReplicaMetadata 會傳回可存取此中繼資料存放區中所儲存複寫中繼資料的 IReplicaMetadata 實作。

  3. 使用 ISyncMetadataStore::BeginTransaction 來開始資料庫交易。這樣可確保呼叫此方法之後對中繼資料所做的變更,全部都會儲存到資料庫或是全部都不儲存。

  4. 使用 IReplicaMetadata::CreateNewItemMetadata 來建立新的項目中繼資料,或是使用類似 IReplicaMetadata::FindItemMetadataByGlobalId 的方法來尋找個別項目的中繼資料。這些方法會傳回可存取此中繼資料存放區中所儲存之項目中繼資料的 IItemMetadata 實作。

  5. 對項目中繼資料進行變更,然後使用 IReplicaMetadata::SaveItemMetadata 儲存這些變更。

  6. 請呼叫 ISyncMetadataStore::CommitTransaction 讓中繼資料存放區認可這些變更,或是呼叫 ISyncMetadataStore::RollbackTransaction 來捨棄變更。

這個 API 實作也在 IReplicaMetadata 物件上提供一些方法,可協助偵測從項目存放區刪除的項目。例如,IReplicaMetadata::GetUnreportedItems 會傳回在中繼資料存放區內但不在項目存放區內的項目清單。然後提供者就可以將這個清單中的項目在中繼資料存放區內標示為標記。

需求

**標頭:**Metastore.h

請參閱

概念

Sync Framework Metadata Storage Service 元件
儲存中繼資料入門