Как я могу изменить состояние подключения библиотеки предприятия - PullRequest
1 голос
/ 19 января 2010

Я использую Microsoft Enterprise Library для MS SQL. Enterprise Library автоматически закрывает соединение, но я не хочу, чтобы оно закрывалось.

Как сохранить соединение с корпоративной библиотекой?

1 Ответ

0 голосов
/ 23 августа 2010

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...