Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Пул для OracleConnection


Автор: Royan 10.6.2008, 11:22
Всем привет,

    Я хочу поддерживать пул открытых коннекций к нескольким схемам. 

Первая мысль была писать что-то вроде

Код

// cs.ConnectionString - строка с параметрами
OracleConnection conn = new OracleConnection(cs.ConnectionString);
conn.Open();

connectionPool.Add("Conn 1", conn); // кладем ее в Dictionary и потом используем


Естественно в конце работы я бы их закрывал. Но мне показалась что это велосипед и с .NET'e уже должен быть либо встроенный пул, либо возможность открывать persistent соединения, так ли это? И какой вариант посоветуете?

Автор: akizelokro 10.6.2008, 14:28
Пулинг соединений есть (если поддерживается) в самих базах данных. ADO.Net с ним работает.
На твоём месте, если твоя программа собирается множить открытые соединения, я бы закрывал их сразу после того, как они отработали. Если ты пишешь для себя поступай, как хочешь. Если для других, то неизвестно к кому твоя программа попадет в руки.

Автор: Royan 11.6.2008, 10:21
Цитата(akizelokro @  10.6.2008,  11:28 Найти цитируемый пост)
ADO.Net с ним работает

Ну это касается только MSSQL, c другими базами данных ничего не ясно. В PHP, например, к Ораклу можно открывать persistent соединения, который как раз заводятся в виде пулс на стороне Оракла. Что происхожит в C# я не знаю. Впрочем я сделал как писал выше и вроде все работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)