Netestoval jsem, ale zajímalo by mě, jestli máte stejný problém, pokud jste použili TransactionScope s možnostmi IsolationLevel.ReadUncommitted. Museli byste zapouzdřit svou kompletní sadu volání a to by mělo popřít potřebu tohoto prohlášení. Uvědomuji si, že toto prohlášení není vaší základní starostí, ale obecně.
Další věc, kterou můžete udělat, je vytvořit třídu DBConnectionScope (nebo využít třídu důvěryhodného dodavatele) a snížit celkový počet otevřených připojení.