次の方法で共有


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
abstract DeserializeReplicaMetadata : 
        serializedFilePath:string * 
        expectedProviderCompatibilityVersion:uint32 * 
        providerUpgradeCallback:IProviderUpgradeCallback -> bool 
override DeserializeReplicaMetadata : 
        serializedFilePath:string * 
        expectedProviderCompatibilityVersion:uint32 * 
        providerUpgradeCallback:IProviderUpgradeCallback -> bool 
public override function DeserializeReplicaMetadata(
    serializedFilePath : String, 
    expectedProviderCompatibilityVersion : uint, 
    providerUpgradeCallback : IProviderUpgradeCallback
) : boolean

パラメーター

  • serializedFilePath
    型 : System. . :: . .String
    特定のレプリカのシリアル化されたメタデータを含むファイル。
  • expectedProviderCompatibilityVersion
    型 : System. . :: . .UInt32
    正規のメタデータ ファイルに含まれることが想定されるプロバイダー互換性バージョン。想定されるバージョンが実際のバージョンと一致しない場合、逆シリアル化は、その設計上、providerUpgradeCallback が nullNothingnullptrunitNULL 参照 (Visual Basic では Nothing) であるときや、providerUpgradeCallback が nullNothingnullptrunitNULL 参照 (Visual Basic では Nothing) でないときに providerUpgradeCallback メソッドが呼び出されると失敗します。詳細については、「fb008b8f-a90b-4cbc-b718-7cb9c92a26ea バージョンが異なるコンポーネントのメタデータへのアクセス」および「b3ff82fb-f946-4b7f-8a32-655535cf5e92 メタデータ ストアのアップグレード」を参照してください。
  • providerUpgradeCallback
    型 : Microsoft.Synchronization.MetadataStorage. . :: . .IProviderUpgradeCallback
    シリアル化されたメタデータに含まれるプロバイダー バージョンが expectedProviderCompatibilityVersion と同じでないためにメタデータ ストア形式をアップグレードする必要があるときに呼び出されるコールバック メソッド。

戻り値

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

例外

例外 条件
ArgumentNullException

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

ArgumentException

serializedFilePath が空の文字列です。

ExplicitTransactionRequiredException

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

MetadataStoreProviderVersionMismatchException

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

SyncInvalidOperationException

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

説明

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

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

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

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

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

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

参照

参照

SqlSyncMetadataStoreSerializerクラス

SqlSyncMetadataStoreSerializer メンバー

Microsoft.Synchronization.MetadataStorage 名前空間