SqlSyncMetadataStoreSerializer.DeserializeReplicaMetadata 方法
將標準中繼資料檔案的內容還原序列化至中繼資料儲存服務存放區。當提供者版本變更時,選擇性地升級中繼資料存放區格式。
命名空間: Microsoft.Synchronization.MetadataStorage
組件: Microsoft.Synchronization.MetadataStorage (在 microsoft.synchronization.metadatastorage.dll)
語法
'宣告
Public Overrides Function DeserializeReplicaMetadata ( _
serializedFilePath As String, _
expectedProviderCompatibilityVersion As UInteger, _
providerUpgradeCallback As IProviderUpgradeCallback _
) As Boolean
'用途
Dim instance As SqlSyncMetadataStoreSerializer
Dim serializedFilePath As String
Dim expectedProviderCompatibilityVersion As UInteger
Dim providerUpgradeCallback As IProviderUpgradeCallback
Dim returnValue As Boolean
returnValue = instance.DeserializeReplicaMetadata(serializedFilePath, expectedProviderCompatibilityVersion, providerUpgradeCallback)
public override bool DeserializeReplicaMetadata (
string serializedFilePath,
uint expectedProviderCompatibilityVersion,
IProviderUpgradeCallback providerUpgradeCallback
)
public:
virtual bool DeserializeReplicaMetadata (
String^ serializedFilePath,
unsigned int expectedProviderCompatibilityVersion,
IProviderUpgradeCallback^ providerUpgradeCallback
) override
public boolean DeserializeReplicaMetadata (
String serializedFilePath,
UInt32 expectedProviderCompatibilityVersion,
IProviderUpgradeCallback providerUpgradeCallback
)
public override function DeserializeReplicaMetadata (
serializedFilePath : String,
expectedProviderCompatibilityVersion : uint,
providerUpgradeCallback : IProviderUpgradeCallback
) : boolean
參數
- serializedFilePath
包含特定複寫之序列化中繼資料的檔案。
- expectedProviderCompatibilityVersion
預期會包含在標準中繼資料檔案中的提供者相容性版本。如果預期的版本與實際的版本不符,還原序列化會依照設計而失敗 (當 providerUpgradeCallback 是 null 參考 (在 Visual Basic 中為 Nothing) 時),或者呼叫 providerUpgradeCallback 方法 (當 providerUpgradeCallback 不是 null 參考 (在 Visual Basic 中為 Nothing) 時)。如需詳細資訊,請參閱從不同版本的元件存取中繼資料和升級中繼資料存放區版本。
- providerUpgradeCallback
因為序列化中繼資料中所包含的提供者版本與 expectedProviderCompatibilityVersion 不同,所以必須升級中繼資料存放區格式時所呼叫的回呼方法。
傳回值
如果存在要還原序列化的中繼資料,則為 true,否則為 false。
例外
例外狀況型別 | 條件 |
---|---|
必要的參數為 null 參考 (在 Visual Basic 中為 Nothing)。 |
|
serializedFilePath 是空字串。 |
|
交易無法用來還原序列化中繼資料。 |
|
針對 expectedProviderCompatibilityVersion 所指定的提供者相容性版本與標準中繼資料檔案中指定的版本不符,而且 providerUpgradeCallback 是 null 參考 (在 Visual Basic 中為 Nothing)。 |
|
中繼資料存放區未開啟。 |
備註
呼叫這個方法之前,必須符合三個條件:
您必須開啟中繼資料存放區。請透過呼叫 OpenStore 或 CreateStore 開啟存放區。
還原序列化資料的複寫必須已經初始化其中繼資料存放區。若要初始化中繼資料存放區,請呼叫 InitializeReplicaMetadata。
使用中交易必須存在 SqlMetadataStore 物件上。請透過呼叫 BeginTransaction 啟動交易。
如果其中一項條件不符,呼叫這個方法就會導致例外狀況。
您可以在提供者版本變更時升級中繼資料結構描述的程序中使用這個方法。如需詳細資訊,請參閱升級中繼資料存放區版本。
請參閱
參考
SqlSyncMetadataStoreSerializer 類別
SqlSyncMetadataStoreSerializer 成員
Microsoft.Synchronization.MetadataStorage 命名空間