För att binda en DataTable
till en DataGridView
din kod behöver helt enkelt ändras till
public void read()
{
try
{
using(OracleConnection conn = new OracleConnection("....."))
using(OracleCommand cmd = new OracleCommand("select * from t1", conn))
{
conn.Open();
using(OracleDataReader reader = cmd.ExecuteReader())
{
DataTable dataTable = new DataTable();
dataTable.Load(reader);
dataGridView1.DataSource = dataTable;
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
OracleDataReader kan skickas till Load-metoden för DataTable och sedan är tabellen redo att bindas till DataGridView DataSource-egenskapen. Jag har också lagt till några använda uttalanden för att säkerställa korrekt kassering av de använda engångsföremålen. (Särskilt OracleConnection är mycket dyrt att inte stänga i händelse av undantag)