方法 : トランザクションを使用してデータを保存する
更新 : 2007 年 11 月
トランザクションでは、System.Transactions 名前空間を使用してデータを保存します。TransactionScope オブジェクトを使用して、自動的に管理されるトランザクションに参加します。
プロジェクトに対する System.Transactions アセンブリへの参照は作成されないので、トランザクションを使用するプロジェクトへの参照は手動で追加する必要があります。
メモ : |
---|
System.Transactions 名前空間は、Windows 2000 以降でサポートされます。 |
トランザクションを実装する最も簡単な方法は、using ステートメントで TransactionScope オブジェクトをインスタンス化することです。詳細については、「Using ステートメント (Visual Basic)」と「using ステートメント (C# リファレンス)」を参照してください。using ステートメント内で実行されるコードは、トランザクションに参加します。
トランザクションをコミットするには、using ブロックの最後のステートメントとして Complete メソッドを呼び出します。
トランザクションをロールバックするには、Complete メソッドを呼び出す前に例外をスローします。
詳細については、「チュートリアル : トランザクションのデータの保存」を参照してください。
System.Transactions の DLL への参照を追加するには
[プロジェクト] メニューの [参照の追加] を選択します。
[.NET] タブで System.Transactions を選択し (SQL Server プロジェクトでは [SQL Server] タブ)、[OK] をクリックします。
System.Transactions.dll への参照がプロジェクトに追加されます。
トランザクションのデータを保存するには
トランザクションを含む using ステートメントにデータを保存するコードを追加します。using ステートメントで TransactionScope オブジェクトを作成してインスタンス化する方法のコード例を次に示します。
Using updateTransaction As New Transactions.TransactionScope ' Add code to save your data here. ' Throw an exception to roll back the transaction. ' Call the Complete method to commit the transaction updateTransaction.Complete() End Using
using (System.Transactions.TransactionScope updateTransaction = new System.Transactions.TransactionScope()) { // Add code to save your data here. // Throw an exception to roll back the transaction. // Call the Complete method to commit the transaction updateTransaction.Complete(); }