2

ASP.NETWebアプリケーションでのトランザクションの実装を検討しています。その3層アーキテクチャ。ビジネスレイヤーからWebサービスを呼び出しており、TransactionOPtion属性を設定してWebサービスにトランザクションを実装することを計画しています。

データレイヤーについて言えば、データレイヤーにトランザクションを実装するのは良いオプションですか、それともビジネスレイヤーから呼び出す必要があります。ビジネスレイヤーからトランザクションを開始する場合、トランザクションコンテキストをデータレイヤーに渡す必要があると思いますが、Datalyer自体でトランザクションを開始できるため、私によれば意味がありません。別のデータベースと話しているわけでも、BusinessLayerからの複数のメソッド呼び出しもありません。したがって、このコンテキストでは、ビジネスレイヤーでトランザクションを実行する必要があるとは思いません。私の理解を確認/修正していただけませんか?

ありがとう

ソニ

4

2 に答える 2

3

1回の呼び出しからビジネス層への複数回の呼び出しがある場合、トランザクションスコープをビジネス層に昇格させることは避けられないと思います。

ビジネスレイヤーの呼び出しごとに1つのデータレイヤーの呼び出しに制限する場合は、もちろん、ビジネスレイヤーレベルのトランザクションは必要なく、データレイヤーでのみ保持できます。

于 2011-09-12T12:14:04.020 に答える
0

トランザクションの追跡は簡単ではありません。
トランザクションの開始と終了の責任はビジネスレイヤーに移動します。
->レイヤー間の結合は、Webサービスを呼び出すときに予想されるよりもはるかに大きくなります。

于 2011-09-12T12:21:12.707 に答える