Poiché l'intenzione di chiamare adapter.Fill(table);
è per recuperare i dati dal database, mi aspetto fortemente che il Fill
il metodo apre la connessione se non lo è già.
Dovresti solo chiamare esplicitamente Open
se intendi operare sulla connection
direttamente invece che tramite classi di supporto come MySqlDataAdapter
Per esempio. Ovviamente puoi aprirlo quando vuoi.
Ti suggerirei, tuttavia, di inserire la connessione in un using
dichiarazione per assicurarti che sia chiuso e smaltito quando hai finito con esso:
using (var connection = new MySqlConnection(conString))
{
DataTable table = new DataTable();
MySqlDataAdapter adapter = new MySqlDataAdapter("SELECT * FROM users", connection);
adapter.Fill(table);
dataGridView1.DataSource = table;
}
// Now you are sure the connection is closed and being properly garbage collected