我试图了解 DbConnection 和 DbCommand,以及在使用后处理这些对象的正确方法。
以下是我的代码片段。通过在 DbConnection 和 DbCommand 上使用“using 语句”,就足够了吗?我试图防止可能的内存泄漏。
第二个问题,
我必须处置 DbCommand 对象吗?
多谢
DbProviderFactory fac = DbProviderFactories.GetFactory(this.DatabaseProviderName);
using (DbConnection dbConn = fac.CreateConnection())
{
dbConn.ConnectionString = this.ConnectionString;
using (DbCommand comm = fac.CreateCommand())
{
comm.CommandText = "select * from aTable";
comm.Connection = dbConn;
DataTable targetTable = new DataTable();
DbDataAdapter facDA = fac.CreateDataAdapter();
facDA.SelectCommand = comm;
facDA.Fill(targetTable);
//assuming Adapter would open / close connection (right assumption?)
//do something with the datatable
}
}