我有這樣一段代碼:c#關閉sqlconnection和sqldatareader與否?
SqlConnection conn;
string strconString = System.Configuration.ConfigurationManager.ConnectionStrings["SQLCONN"].ToString();
conn = new SqlConnection(strconString);
string cmdstr = "select status from racpw where vtgid = " + vtgid;
SqlCommand cmdselect = new SqlCommand(cmdstr, conn);
conn.Open();
SqlDataReader dtr = cmdselect.ExecuteReader();
if (dtr.Read())
{
return;
}
else
{
...
}
dtr.Close();
conn.Close();
現在我的問題是。 如果回報,確實我的連接和DTR都會自動關閉,或者我應該使用布爾變量和我的連接都處在關閉後進行回報?
但他可能使用連接池無法控制。這意味着,垃圾收集器不會關閉連接。在那種情況下,當他嘗試再次創建並打開新連接時,他將面臨InvalidOperationException。 – Egor4eg 2010-12-08 09:47:14