- - PR -
トランザクション単位のインスタンス生成
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-04-20 21:57
初めて投稿させて頂きます。よろしくお願いします。
.NETというよりも、MS DTCの質問になってしまうかも知れませんが・・・ もし、.NETとMS DTCの連携で何かご存知の方がいらしたらご教授いただけると幸いです。 .NETでの開発は今回が初めてで、どうシステム設計すれば良いかかなり戸惑っています。 .NET: 2003 OS: Windows2003Server
上記のようにWeb Serviceから複数のクラスA/Bを呼び クラスA/Bでは、あるクラス(C)のインスタンスを共有したいと思っています。 クラスA/Bは、1つのトランザクションの中に収めたいので ASP.NET側からトランザクションを開始し、MS DTCにて 分散トランザクションの配下にしようと思っています。 クラスCのインスタンスは、トランザクション単位で生成したいと思っていますが トランザクション単位で生成するには、トランザクションのID的なものを キーとしてインスタンスを生成する仕組みが必要となると思います。 そこで、.NETのクラスで、MS DTCからトランザクションIDなどを 取得することは可能なのでしょうか? トランザクションIDが取得できなければ、独自にトランザクションIDを管理する クラスを作るしかないかと思いますが、もし標準でそのような機能があるのであれば 出来るだけ標準的な手法を使いたいと思っています。 もしくは、このような要件のときには、.NETではこんな風にするのが一般的だ。 といった情報でも、もちろん大歓迎です。 2相コミットが実現出来れば、MS DTCでなくともかまいません。 どうぞ、よろしくお願いいたします。 [ メッセージ編集済み 編集者: えじ 編集日時 2006-04-20 22:02 ] [ メッセージ編集済み 編集者: えじ 編集日時 2006-04-20 22:03 ] | ||||||||
|
投稿日時: 2006-04-21 00:31
とりあえず、名前空間的には
System.EnterpriseServices System.Transactions http://www.microsoft.com/japan/msdn/net/general/introsystemtransact.asp じゃないかな。 | ||||||||
|
投稿日時: 2006-04-21 02:15
ありがとうございます。
もうお酒が入ってしまったので(^^ 明日(今日)、じっくり読みます。 とりあえず、お礼まで。m(_ _)m | ||||||||
|
投稿日時: 2006-04-21 06:08
タイトルには .NET Framework 2.0 と書いてあるけど? .NET 2003 って、VS.NET 2003 で、.NET Framework 1.1 のことですよね? | ||||||||
|
投稿日時: 2006-04-21 08:52
1.xのプログラミングモデル(System.EnterpriseServices)との比較もあるのでちょうどいいかなと。 | ||||||||
|
投稿日時: 2006-04-21 11:01
参考になりました。
ありがとうございました。 私自身も.NETで複数DAOクラスのトランザクション制御について 色々と探してみましたが、一般的・標準的な手法というのは 今のところ特にないような感じを受けました。 ただ、 Seasar S2Container.NET http://s2container.net.seasar.org/ もしかしたらこのAOPコンテナで近いことが実現できるかもしれない気がするので ちょっとこれを調べてみようと思っています。 AOPは全くやったことないので、かなり漠然としていますが ありがとうございました。 |
1