IReplicaMetadata::SaveItemMetadata
項目メタデータのプロパティの変更をメタデータ ストアに保存します。
HRESULT SaveItemMetadata(IItemMetadata * pItemMetadata);
パラメーター
- pItemMetadata
[in] メタデータ ストアに保存される項目メタデータ。
戻り値
S_OK
保存する変更がない場合は S_FALSE。
pItemMetadata で指定した項目 ID が有効でない場合や重複している場合は SYNC_E_METADATA_PRIMARY_KEY_CONSTRAINT。
解説
IItemMetadata プロパティの変更をメタデータ ストアに保存するには、このメソッドを呼び出す必要があります。このメソッドを呼び出さずに IItemMetadata プロパティを変更してオブジェクトを破棄した場合、それらの変更は失われます。
対応する変更が項目ストアに保存された後でメタデータの変更を保存するには、このメソッドを呼び出してください。こうすることにより、データの更新が失敗した場合に、メタデータが変更されなくなります。
ISqlSyncMetadataStore から使用できるこのクラスの実装は、このメソッドを呼び出す前に開始されたトランザクションのコンテキスト内で更新を実行します。
実装に関するメモ
このメソッドは、プロパティのすべての変更がメタデータ ストアに正常にコミットされた場合のみ、正常実行とする必要があります。プロパティの変更がすべてコミットされるか、1 つもコミットされないことが必要です。
メタデータ ストアがトランザクションをサポートする場合、このメソッドはそのトランザクションのコンテキスト内で変更をメタデータ ストアに適用する必要があります。