Использование оператора Statement для предотвращения открытого соединения при работе с SQL Server - PullRequest
0 голосов
/ 04 февраля 2020

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

У меня есть конструктор, который устанавливает строку подключения и устанавливает новое соединение, например:

public MSSQL()
{
    string ConnectionString = "The address to database";
    connection = new SqlConnection(ConnectionString);
}

И тогда я хочу вызвать функцию, которая получает мои данные:

public async Task AddEmployee(Employee emp, string storedProcedureToAddEmployee = "AddEmployee")
{
    MSSQL rep = new MSSQL();
    using (rep.connection) { await connection.QueryAsync<Employee>(storedProcedureToAddEmployee, "Adding all info"}
}

И ниже я объясню, как его решение (очень смутно объяснено)

public async Task AddEmployee(Employee emp, string storedProcedureToAddEmployee = "AddEmployee")
{            
    using (IDbConnection con = new SqlConnection("ConnectionString")) 
    { 
        await con.QueryAsync<Employee>(storedProcedureToAddEmployee, "Adding all info"); 
    }
}

Как они отличается, или я что-то пропустил?

...