Несмотря на то, что это старый пост, я чувствую, что важно добавить к нему.
Пул соединений с базами данных ADO.NET НЕ работает в службах WCF для каждого вызова, если вы следуете типичному сценарию (создание экземпляров объектов ADO.NET в объекте службы).
В то время как я понимаю вышеупомянутую теорию и аргументы, они являются только теорией.
Простое приложение для создания форм Windows, которое проходит через этапы открытия, запроса, закрытия несколько раз, покажет вам, что первый вызов Open () занимает довольно много времени, например 2 или 3 секунды, а последующие вызовы и запросы выполняются быстро - эффект пула соединений.
Если вы поместите идентичный код в службу WCF для каждого вызова, вы получите 2-3-секундную задержку при КАЖДОМ ВЫЗОВЕ, первом вызове и всех последующих вызовах.
Вывод - пул соединений с базой данных ADO.NET НЕ работает в службах WCF для каждого вызова, если вы выполняете типичную реализацию ADO в службе.
Вам потребуется создать экземпляры объектов ADO на хосте настраиваемой службы и добавить соответствующий код синхронизации, если вам нужно, или жить без пула соединений с базой данных.