2007年8月 8日

ASP.NET 2.0 でトランザクション

 Webアプリにおけるトランザクションってのは、リクエストされたときに開始して、ページがつつがなく生成できたレスポンス時にコミットするのがほとんどであろう。

 その途中でなにかエラーがあれば、もちろんロールバックする。

 というわけで、意識的に書かなきゃならんのはエラー時のロールバックだけなんじゃねぇの? と思う。


 Web全盛から10年は経っているので、なんか便利な機能があるはずだ! と思って調べたら、ちゃんとあった。

 まず、.aspx ファイルの先頭に

<%@ Transaction="Required" %>

 を書く。

 これだけで、ページ全体が1つのトランザクションになる。

 あとは、エラー時に ContextUtil.SetAbort() を呼び出してロールバックさせるだけ。

Posted by rukihena at 22:41:12
トラックバックURL

このエントリーのトラックバックURL:
http://weblog.rukihena.com/mt/mt-tb.cgi/707

コメント