ADO.NET имеет встроенный пул соединений, и вы не можете создать лучший.
Когда вы создаете соединение, используя строку соединения, Framework проверяет пул соединений, чтобы увидеть, доступно ли соединение с этой строкой соединения. Если он есть, он вытаскивает его из бассейна и возвращает вам; в противном случае он создает новый и возвращает его вам.
Точно так же, когда вы закрываете (удаляете) соединение, оно не сразу разрушается.
Когда вы закрываете соединение с определенной строкой соединения, оно не сразу уничтожается. Вместо этого он возвращается в пул соединений.
Автоматический пул соединений можно отключить, чтобы вы могли использовать собственное решение, но это не рекомендуется.
РЕДАКТИРОВАТЬ:
Как указывалось, я не ответил на вопрос в своем первоначальном ответе.
Как правило, строки передачи не передаются. Вместо этого они хранятся в файле конфигурации (web.config
или app.config
) в разделе connectionStrings. Когда вам нужна строка подключения, вы извлекаете ее в методе, который требует ее, используя ConfigurationManager.ConnectionStrings
.