如果連接到數據庫會消耗大量資源,那麼爲什麼要在應用程序中始終關閉數據庫連接(如果必須再次打開它)呢?我可以在整個應用程序中使這個連接全局可用,以便其他類和方法可以重用它嗎?爲什麼總是關閉數據庫連接?
例如(在僞代碼):
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
}
}
我建議閱讀[SQL Server連接池(ADO.NET)](http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx)。 – 2010-11-06 02:44:36