На самом деле, это не работает таким образом. Да. DbConnection уровня .NET будет открываться и закрываться. Но в драйвере ADO.NET физическое соединение с базой данных (то, которое фактически требует клиентских и серверных ресурсов) не открывается и не закрывается для каждого из них. Драйвер ADO.NET управляет пулом физических соединений. Таким образом, каждое из этих 52000 соединений фактически использует одно и то же физическое соединение. Это на самом деле ничего не стоит.
Управление соединением на самом деле составляет около 50% причины, по которой существует блок доступа к данным, поэтому нет простого переключателя, чтобы отключить его. Лучшее, что вы можете сделать, - это создать DbConnection вручную и передать его перегрузкам, которые принимают соединение. Но тогда вам нужно управлять этим самостоятельно. В этот момент вам, вероятно, лучше просто позвонить в ADO.NET напрямую.