Por que sempre fechar a conexão com o banco de dados?
Se a conexão com um banco de dados consome muitos recursos, por que uma conexão com o banco de dados sempre deve ser fechada no seu aplicativo se você precisar abri-lo novamente? Posso disponibilizar globalmente essa conexão em todo o meu aplicativo para que outras classes e métodos possam reutilizá-lo?
Por exemplo (no pseudo código):
public class PopulateGridViews()
{
public SqlConnection conn = new SqlConnection(@"Database:DATABASE");
conn.Open();
void PopulateGrid1()
{
SqlCommand cmd = new SqlCommand("SELECT * FROM TABLE1");
cmd.Connection = conn;
cmd.ExecuteNonQuery();
cmd.Dispose();
// Populate Grid1
}
void PopulateGrid2()
{
SqlCommand cmd = new SqlCommand("SELECT * FROM TABLE2");
cmd.Connection = conn;
cmd.ExecuteNonQuery();
cmd.Dispose();
// Populate Grid2
}
}