共用方式為


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

例外

例外狀況型別 條件

ArgumentNullException

必要的參數為 null 參考 (在 Visual Basic 中為 Nothing)。

ArgumentException

serializedFilePath 是空字串。

ExplicitTransactionRequiredException

交易無法用來還原序列化中繼資料。

MetadataStoreProviderVersionMismatchException

針對 expectedProviderCompatibilityVersion 所指定的提供者相容性版本與標準中繼資料檔案中指定的版本不符,而且 providerUpgradeCallback 是 null 參考 (在 Visual Basic 中為 Nothing)。

SyncInvalidOperationException

中繼資料存放區未開啟。

備註

呼叫這個方法之前,必須符合三個條件:

如果其中一項條件不符,呼叫這個方法就會導致例外狀況。

您可以在提供者版本變更時升級中繼資料結構描述的程序中使用這個方法。如需詳細資訊,請參閱升級中繼資料存放區版本

請參閱

參考

SqlSyncMetadataStoreSerializer 類別
SqlSyncMetadataStoreSerializer 成員
Microsoft.Synchronization.MetadataStorage 命名空間