Nie testowałem, ale zastanawiałbym się, czy masz ten sam problem, jeśli używasz TransactionScope z opcjami IsolationLevel.ReadUncommitted. Musiałbyś zawrzeć pełny zestaw wywołań, a to powinno negować potrzebę tego stwierdzenia. Zdaję sobie sprawę, że to stwierdzenie nie jest twoją podstawową troską, ale ogólnie.
Inną rzeczą, którą możesz zrobić, jest utworzenie klasy DBConnectionScope (lub wykorzystanie klasy zaufanego dostawcy) i zmniejszenie całkowitej liczby otwieranych połączeń.