継承したコードベースのために、かなり奇妙な要件があります。DAL はリポジトリ パターンに基づいていますが、一部のリポジトリは SqlConnection/SqlCommand を使用して直接 SQL とパラメーター化されたクエリを使用してコーディングされており、一部は NHibernate を使用してコーディングされています。
両方の分割からのリポジトリを必要とする一連のデータ操作を実行する必要があり、途中のいずれかの段階で失敗した場合は、すべてロールバックする必要があります。これについて最善の方法は何ですか?
System.Data は IDbTransaction を公開し、NHibernate は ITransaction を公開しますが、これら 2 つは互換性がありますか? 両方のトランザクションを同時に実行し、問題が発生した場合に両方をロールバックできますか? このシナリオで TransactionScope は役に立ちますか?