Лучший способ управлять объектом подключения, используемым для доступа к базе данных в проекте приложения Windows, разработанном c #? - PullRequest
0 голосов
/ 10 января 2010

Каков наилучший способ управления подключением для доступа к базе данных при разработке приложения для Windows с использованием c #? Я имею в виду наличие переменной объекта соединения всего проекта, которая открывается при запуске приложения, закрывается и удаляется к концу приложения ИЛИ в каждом процедура (например, select, insert, update, ...), которая использует соединение с БД, мы объявляем объект соединения, открываем его, используем его, и в конце процедуры мы закрываем и удаляем его?

Итак, как управлять объектом подключения в наших приложениях?

Ответы [ 2 ]

0 голосов
/ 10 января 2010

Я думаю, что для меньшего числа пользователей, вероятно, лучше всего открыть соединение при запуске приложения и закрыть его в конце приложения.

Пул подключений имеет очень мало, если вообще имеет какое-либо отношение к Windows Forms приложение. Пул создается на отдельных клиентах, а не на сервер.

0 голосов
/ 10 января 2010

Проектное соединение отлично работает для приложений Windows. Некоторые базы данных (в частности, MySQL) ограничивают время простоя соединения, поэтому вам может потребоваться обработать отключение на стороне сервера по истечении времени ожидания.

При наличии пула соединений модель «одно соединение на запрос» также будет работать с довольно небольшими накладными расходами на стороне клиента и без накладных расходов на стороне сервера. Но это совершенно бессмысленно. Эта модель была изобретена для среды с высокой степенью параллелизма веб-сервера; в приложении для Windows нет параллелизма.

РЕДАКТИРОВАТЬ: в многопоточном приложении достаточно одного соединения на поток. Совместное использование потоков между потоками - плохая идея, и в целом не работает.

...