Supongamos que tengo el siguiente código:¿Realiza una declaración de uso de C# try/finally?
private void UpdateDB(QuoteDataSet dataSet, Strint tableName)
{
using(SQLiteConnection conn = new SQLiteConnection(_connectionString))
{
conn.Open();
using (SQLiteTransaction transaction = conn.BeginTransaction())
{
using (SQLiteCommand cmd = new SQLiteCommand("SELECT * FROM " + tableName, conn))
{
using (SQLiteDataAdapter sqliteAdapter = new SQLiteDataAdapter())
{
sqliteAdapter.Update(dataSet, tableName);
}
}
transaction.Commit();
}
}
}
El C# documentación indica que con una declaración using
el objeto dentro del ámbito estará dispuesto y he visto varios lugares en los que se sugiere que no es necesario para usar la cláusula try/finally.
lo general rodean mis conexiones con un try/finally, y siempre cerrar la conexión en la cláusula finally. Dado el código anterior, ¿es razonable suponer que la conexión se cerrará si hay una excepción?
similares a http://stackoverflow.com/questions/278902/ usando-comunicado-vs-try-finally –
no es una respuesta a su pregunta. Por favor leer acerca de los ataques de inyección SQL. –