Если у вас есть класс, который использует данные в нескольких точках входа.и вы должны держать соединение открытым.(следовательно, нельзя использовать , используя оператор (Connection x = ...) {} )
.
ваш класс также должен наследовать IDisposable и реализовывать
void Dispose()
{
this.dbConnection.Dispose();
}
dbConnection.Dispose () позаботится о корректном закрытии соединения, если только вам не понадобятся какие-либо пользовательские действия (например, выход из системы, сохранение информации в кэше и т. Д.)
В любом случае, я заидеи @Tim Schmelter:
Закрыть соединение после любой транзакции.
Соединения будут кэшироваться в пуле соединений => незначительная производительностьудар.