У меня есть класс с объектом MySqlConnection, который я повторно использую в своем приложении
public class MySqlWrapper : IDbConnection
{
MySqlConnection _connection = new MySqlConnection();
}
У меня есть несколько методов, использующих этот
public void UseDB()
{
_connection.Open();
// Do highly important stuff
_connection.Close();
}
Бывает, что вызов Open ()происходит сбой, потому что соединение уже открыто.
Да, все мои Open () имеют соответствующие Close ()
Теперь решение, которое я нашел, было бы клонировать соединение каждый раз, когда я его использую
MySqlConnection connClone = _connection.Clone();
connClone.Open();
По какой-то причине этот фрагмент пахнет плохим кодом.Это безопасно для использования?Есть ли другой способ, который я не знаю, чтобы справиться с открытием / закрытием?