M>Говорят, что в .NET соединения (в том числе OleDb и SqlClient) кешируются. M>В результате, если ты много раз будешь отключаться-переподключаться, физически оно может и не "менять коней на переправе", так на одном соединении и работать физически.
В общем-то поэтому мой вопрос и возник. ОДНАКО
Скорее всего мне не хватает знаний, чтобы это реализовать.
При проверке на СУБД Sybase ASA 8 и Oracle 9 каждое новое подключение из одного приложения вызывает открытие новой сессии.
Это, естественно, вызывает нарушения в привычной для меня логике программ — особенно в части касающейся транзакций.
M>Во всяком случае, лично я просто всегда использую using или try/finally — и соединения чистоплотно закрываю.
Мне тоже приходится так же работать. Однако, это весьма не удобно — надо либо каждой форме, работающей с соединениями, передавать в конструкторе соединение (а для этого перекрывать конструктор), либо писать статические методы для получения соединения в отдельном модуле.