変更の保存または破棄
項目でプロパティを設定する場合、変更を明示的に保存するまで、実際には COM+ カタログに変更は記録されません。 これを行うには、項目が含まれるコレクションの COMAdminCatalogCollection オブジェクトで SaveChanges メソッドを使用します。
まだコミットされていない変更を破棄する場合、COMAdminCatalogCollection オブジェクトで Populate メソッドを呼び出すことができます。 これにより、COM+ カタログからコレクション内のすべての項目の永続的なデータをすべて読み取り、保留中の変更が事実上削除されます。
SaveChanges を使用した場合、選択したプロパティ設定に不整合があるとエラーが発生します。SaveChanges は、エラーを返したオブジェクトの書き込みに失敗します。 特定の項目のすべてのプロパティが書き込まれるか、全体の書き込みに失敗します。
ただし、書き込みエラーが発生した場合、互換性のない設定が原因ではない可能性があります。他のエラーが発生している可能性があります。 エラーの詳細を調べて確認する必要があります。 詳しくは、「COM+ 管理エラーの処理」と「プロパティ間の相互依存関係」をご覧ください。
一般に、一度に保存しようとする変更が多いほど、特に複数のオブジェクトに変更が加えられと、エラーが発生する可能性が高くなり、追跡が困難になります。
さらに、Populate と SaveChanges の呼び出しの間に、コレクション内の項目に対するロックはありません。競合が発生する可能性があります。 詳細については、「プロパティの取得と設定」を参照してください。
関連トピック