.NET Framework クラス ライブラリ
CommittableTransaction クラス

更新 : 2007 年 11 月

コミットできるトランザクションを示します。

名前空間 :  System.Transactions
アセンブリ :  System.Transactions (System.Transactions.dll 内)

構文

Visual Basic (宣言)
<SerializableAttribute> _
Public NotInheritable Class CommittableTransaction _
    Inherits Transaction _
    Implements IAsyncResult
Visual Basic (使用法)
Dim instance As CommittableTransaction
C#
[SerializableAttribute]
public sealed class CommittableTransaction : Transaction, 
    IAsyncResult
Visual C++
[SerializableAttribute]
public ref class CommittableTransaction sealed : public Transaction, 
    IAsyncResult
J#
/** @attribute SerializableAttribute */ 
public final class CommittableTransaction extends Transaction implements IAsyncResult
JScript
public final class CommittableTransaction extends Transaction implements IAsyncResult
解説

CommittableTransaction クラスは、TransactionScope クラスを暗黙的に使用せずに、アプリケーションでトランザクションを使用する明示的な方法を提供します。TransactionScope クラスとは異なり、アプリケーションの作成者はトランザクションをコミットまたは中止するために、特に Commit メソッドと Rollback メソッドを呼び出す必要があります。ただし、トランザクションをコミットできるのは、そのトランザクションの作成者だけです。したがって、Clone メソッドを介して取得したコミット可能なトランザクションのコピーについてはコミットできません。

メモ :

TransactionScope クラスを使用して暗黙のトランザクションを作成し、アンビエント トランザクション コンテキストを自動的に管理することをお勧めします。複数の関数呼び出しまたは複数のスレッド呼び出しで同じトランザクションを使用する必要のあるアプリケーション向けに、TransactionScope クラスおよび DependentTransaction クラスを使用する必要もあります。このモデルの詳細については、「トランザクション スコープを使用した暗黙的なトランザクションの実装」を参照してください。

CommittableTransaction を作成しても、アンビエント トランザクション (コードが実行されるトランザクション) が自動的に設定されるわけではありません。アンビエント トランザクションを取得または設定するには、グローバル オブジェクトである Transaction の静的な Current プロパティを呼び出します。アンビエント トランザクションの詳細については、「トランザクション スコープを使用した暗黙的なトランザクションの実装」で、TransactionScopeOption を使用したトランザクション フローの管理についての説明を参照してください。アンビエント トランザクションが設定されていない場合、そのトランザクションにはリソース マネージャに対するどのような操作も含まれません。リソース マネージャを正しいトランザクション コンテキストに基づいて確実に動作させるには、アンビエント トランザクションを明示的に設定およびリセットする必要があります。

CommittableTransaction がコミットされるまで、トランザクションに関連するすべてのリソースは引き続きロックされます。

CommittableTransaction オブジェクトは再利用できません。このオブジェクトはコミットまたはロールバックされると、トランザクションで使用したり、現在のアンビエント トランザクション コンテキストとして設定したりすることはできません。


CommittableTransaction の新しいインスタンスを 2 つ作成し、これらのインスタンスをそれぞれコミットおよびロールバックする例を次に示します。

継承階層

System..::.Object
  System.Transactions..::.Transaction
    System.Transactions..::.CommittableTransaction
スレッド セーフ

この型は、スレッド セーフです。

プラットフォーム

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.5、3.0、2.0
参照

参照

その他の技術情報

タグ :


Page view tracker