エンタープライズライブラリを使用してスコープ内でトランザクションを処理する方法。私は1つのスコープで実行する必要がある3つのストアドプロシージャを持っています。 System.Transaction名前空間を使用したくないエンタープライズライブラリのトランザクション
0
A
答えて
0
接続オブジェクトに対してBeginTransactionメソッドを呼び出して、DbTransactionオブジェクトを取得できます。次に、DbTransactionをとるEntlibデータベースオブジェクトのオーバーロードを使用します。しかし、管理するのは巨大な痛みです。 Entlibに頼るのではなく、手動で少なくとも1つの接続を作成して閉じる必要があります.DbTransactionオブジェクトを必要とするすべてに渡す必要があります。
ここでは、本当にTransactionScopeが正しい答えです。脳死の企業ポリシーではない、実際にあなたがそれを使うのを妨げる何らかのブロッキングシナリオがあるなら、それが何であるか知りたいです。
+0
代わりに考えただけです。同じ順序の3つのsprocsであれば、正しい順序でそれらを呼び出す3番目のsprocを作成し、データベースサーバ内でトランザクションを完全に管理してください。新しいsprocは "Trans exec exec sproc1 exec sproc exec sproc3 Commit Trans"とかそういうもの(私のsqlは大したものではありません)をします。 –
関連する問題
- 1. エンタープライズライブラリ5.0
- 2. エンタープライズライブラリSqlCacheDependency
- 3. マイクロソフトのエンタープライズライブラリ
- 4. VS2005のエンタープライズライブラリ
- 5. エンタープライズライブラリの質問
- 6. 将来のMicrosoftエンタープライズライブラリ
- 7. エンタープライズライブラリでのデータベースロギング5
- 8. エンタープライズライブラリ5.0ロギングブロックのカスタマイズ
- 9. エンタープライズライブラリの検証ブロック
- 10. エンタープライズライブラリ5.0インストールエラー
- 11. エンタープライズライブラリfor .NET
- 12. エンタープライズライブラリ4.1アセンブリ
- 13. エンタープライズライブラリ4.1ロギングエラー?
- 14. エンタープライズライブラリ4 dataconfigurationタグ
- 15. WCF +エンタープライズライブラリ+ ValidationFault
- 16. エンタープライズライブラリCacheFactory.GetCacheManager Null Ref
- 17. エンタープライズライブラリの挿入行の例
- 18. エンタープライズライブラリLogger - メールサーバー設定
- 19. エンタープライズライブラリFluent APIとローリングログファイルローリング
- 20. エンタープライズライブラリ4.1例外ポリシー
- 21. エンタープライズライブラリ強力なネーミングのガイダンスパッケージ
- 22. エンタープライズライブラリの日付形式
- 23. エンタープライズライブラリの管理接続
- 24. エンタープライズライブラリ:ロギングブロックと電子メール
- 25. エンタープライズライブラリ5.0 64ビット構成ユーティリティ
- 26. エンタープライズライブラリ5.0 - DatabaseFactory.CreateDatabase() - パフォーマンスが遅い
- 27. エンタープライズライブラリ内でElmahを使用
- 28. エンタープライズライブラリを使用したカウント(*)
- 29. エンタープライズライブラリ5.0、CreateSprocAccessorおよびタイムアウト
- 30. エンタープライズライブラリ:リダイレクトconnectionStringsセクションがConfigurationManager.ConnectionStrings
OK質問には尋ねる必要があります... *なぜ* 'あなたは' System.Transactions'名前空間を使いたくありませんか? –