Реферат: Менеджер подключений к базам данных
private DbManager manager;
public void Init(System.Web.HttpApplication context)
{
application = context;
manager = DbManager.Get();
application.BeginRequest += new EventHandler( OnBeginRequest );
}
protected void OnBeginRequest( object sender, EventArgs e )
{
manager.Init();
}
public void Dispose()
{
application.BeginRequest -= new EventHandler( OnBeginRequest );
}
}
В последних примерах можно заметить ранее не упоминавшийся метод Init. Он служит для привязки данного экземпляра менеджера к вызывающему потоку.
Пожалуйста, закрывайте двери!
Общеизвестно, что при использовании пула подключений (connection pool) основополагающий принцип работы с подключениями гласит: открывай поздно, закрывай рано. Иными словами, открывать нужно перед самым использованием, а закрывать сразу после оного. При этом нужно помнить, что в блоке использования подключения к базе может произойти какая-нибудь ошибка (exception), которая помешает закрыть подключение.
Мы уже рассматривали обычный для ADO.NET способ работы с объектом подключения, примерно такой:
using( connection ) { connection.Open(); // Активнее используем подключение! Иначе, зачем открывали?! ... } |
Он прост и удачен, если не жалко уничтожить объект подключения в конце блока, т.е. если каждый раз создается новый объект подключения. Если же хочется использовать один объект, код становится гораздо менее красивым:
bool wasOpened = false; if( connection.State == ConnectionState.Closed ) { К-во Просмотров: 303
Бесплатно скачать Реферат: Менеджер подключений к базам данных
|