次の方法で共有


SqlSyncMetadataStoreSerializer.DeserializeReplicaMetadata メソッド

正規のメタデータ ファイルの内容を、Metadata Storage Service ストアに逆シリアル化します。オプションで、プロバイダーのバージョンが変更されるときにメタデータ ストアの形式をアップグレードします。

名前空間: 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 が NULL 参照 (Visual Basic では Nothing) です。 でないときに providerUpgradeCallback メソッドが呼び出されると失敗します。詳細については、「バージョンが異なるコンポーネントのメタデータへのアクセス」および「メタデータ ストアのアップグレード」を参照してください。
  • providerUpgradeCallback
    シリアル化されたメタデータに含まれるプロバイダー バージョンが expectedProviderCompatibilityVersion と同じでないためにメタデータ ストア形式をアップグレードする必要があるときに呼び出されるコールバック メソッド。

戻り値

逆シリアル化するメタデータがある場合は true、それ以外の場合は false

例外

例外の種類 条件

ArgumentNullException

必須パラメーターが NULL 参照 (Visual Basic では Nothing) です。 です。

ArgumentException

serializedFilePath が空の文字列です。

ExplicitTransactionRequiredException

メタデータを逆シリアル化するためのトランザクションを使用できません。

MetadataStoreProviderVersionMismatchException

expectedProviderCompatibilityVersion に対して指定されたプロバイダー互換性バージョンが正規のメタデータ ファイルに指定されているバージョンと一致しておらず、providerUpgradeCallback が NULL 参照 (Visual Basic では Nothing) です。 です。

SyncInvalidOperationException

メタデータ ストアが開いていません。

解説

このメソッドを呼び出す前に、次の 3 つの条件が満たされている必要があります。

  • メタデータ ストアが開かれている必要があります。ストアを開くには、OpenStore または CreateStore を呼び出します。

  • データを逆シリアル化するレプリカのメタデータ ストアが初期化されている必要があります。メタデータ ストアを初期化するには、InitializeReplicaMetadata を呼び出します。

  • SqlMetadataStore オブジェクトでアクティブなトランザクションを使用できる必要があります。トランザクションを開始するには、BeginTransaction を呼び出します。

いずれかの条件が満たされていないときにこのメソッドを呼び出した場合、例外が発生します。

このメソッドは、プロバイダーのバージョンが変更されたときにメタデータ スキーマをアップグレードする手続きの一部として使用できます。詳細については、「メタデータ ストアのアップグレード」を参照してください。

参照

リファレンス

SqlSyncMetadataStoreSerializer クラス
SqlSyncMetadataStoreSerializer メンバー
Microsoft.Synchronization.MetadataStorage 名前空間