"Как я могу убедиться, что мои новые соединения исходят из пула соединений и что он не попадает в базу данных"
Это немного ошибочная логика.Пул соединений находится на стороне клиента.Даже если вы повторно используете соединение из пула, любая команда все равно будет попадать в базу данных.
Если у вас точно такая же строка соединения (вплоть до регистрадаже), затем вы будете повторно использовать соединение из пула (при условии, что оно включено, что является значением по умолчанию).
Причина, по которой существует пул соединений, заключается в том, что для настройки соединения требуются некоторые издержки.
Пул соединений с SQL Server :
Подключение к серверу базы данных обычно состоит из нескольких трудоемких этапов.Должен быть установлен физический канал, такой как сокет или именованный канал, должно произойти первоначальное рукопожатие с сервером, информация о строке соединения должна быть проанализирована, соединение должно быть аутентифицировано сервером, должны быть выполнены проверки для зачисления в текущийтранзакция и тд.
На практике большинство приложений используют только одну или несколько разных конфигураций для соединений.Это означает, что во время выполнения приложения многие идентичные соединения будут многократно открываться и закрываться.Чтобы минимизировать стоимость открытия соединений, ADO.NET использует технику оптимизации, которая называется пул соединений.
Пул соединений сокращает количество открытий новых соединений.Пулер поддерживает право собственности на физическое соединение.Он управляет соединениями, поддерживая набор активных соединений для каждой данной конфигурации соединения.Всякий раз, когда пользователь вызывает Open для соединения, диспетчер ищет доступное соединение в пуле.Если пул соединения доступен, он возвращает его вызывающей стороне, а не открывает новое соединение.Когда приложение вызывает Close для соединения, диспетчер возвращает его в объединенный набор активных соединений, а не закрывает его.Как только соединение возвращается в пул, оно готово для повторного использования при следующем вызове Open.
В пул могут быть соединены только соединения с одинаковой конфигурацией.ADO.NET хранит несколько пулов одновременно, по одному для каждой конфигурации.Соединения разделяются на пулы по строке соединения и по идентификатору Windows при использовании встроенной защиты.Соединения также объединяются в зависимости от того, зачислены ли они в транзакцию.