差分

ナビゲーションに移動 検索に移動

TransactionScope クラス (System.Transactions)

1,418 バイト追加, 2012年3月7日 (水) 04:57
ページの作成:「'''TransactionScope クラス'''は、コード ブロックをトランザクションにします。 このクラスは継承できません。 * 名前空間: Syst...」
'''TransactionScope クラス'''は、コード ブロックをトランザクションにします。 このクラスは継承できません。

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

== 設定 ==
TransactionScopeクラスのコンストラクタで明示的に各種トランザクション設定を指定することもできるが、面倒なので[[App.config]]や[[Web.config]]で設定しておいた方がいい。

=== タイムアウト ===
<source lang="xml">
<configuration>
<system.transactions>
<!-- トランザクションがタイムアウトするまでの時間。
デフォルトが何秒かは知らなないが、負荷テストですぐにタイムアウトエラーが
発生したので数秒だと思う。
-->
<defaultSettings timeout="00:03:00"/>
</configuration>
</source>

なお、[[Machine.config]]に上記timeoutに設定できる最大値(maxTimeout)が設定されいる。
たちの悪いことに、timeout=30分、maxTimeout=1分と設定しても、実行時にtimeoutの値が強制的に1分(maxTimeoutの値)に置き換えられるだけでエラーにはならないのでハマった。

== 関連項目 ==
* [[Dapper]]
* [[MySQL Connector/NET]]

== 外部リンク ==
* http://msdn.microsoft.com/ja-jp/library/system.transactions.transactionscope.aspx

{{stub}}
匿名利用者

案内メニュー