私はテストしていませんが、IsolationLevel.ReadUncommitted のオプションを指定して TransactionScope を使用した場合、同じ問題が発生するのではないかと思います。呼び出しの完全なセットをカプセル化する必要があり、このステートメントの必要性を否定する必要があります。この声明はあなたの基本的な関心事ではなく、一般的なものであることを認識しています.
DBConnectionScope クラスを作成して (または信頼できるベンダーのクラスを利用して)、開かれている接続の総数を減らすこともできます。