我正在使用ADO.Net进行某些数据库连接,而我只是希望自己以正确的方式进行操作。我正在为每个存储过程打开和关闭多个连接。还是我应该将其包装在一个打开的连接中(也许数据库上的资源更少?),谢谢,如果有什么奇怪的事情或我可以做得更好的事情,请告诉我谢谢!
例如: 这个,但我喜欢其中的6个…
using (SqlConnection conn = new SqlConnection(ConnectionString)) { SqlCommand cmd = new SqlCommand("spSelectAllTrip", conn); cmd.CommandType = CommandType.StoredProcedure; conn.Open(); ddlTripTypeA.DataSource = cmd.ExecuteReader(); ddlTripTypeA.DataTextField = "TripType"; ddlTripTypeA.DataValueField = "TripTypeAID"; ddlTripTypeA.DataBind(); } using (SqlConnection conn = new SqlConnection(ConnectionString)) { SqlCommand cmd = new SqlCommand("spSelectAllTripB", conn); cmd.CommandType = CommandType.StoredProcedure; conn.Open(); ddlTripTypeB.DataSource = cmd.ExecuteReader(); ddlTripTypeB.DataTextField = "TripType"; ddlTripTypeB.DataValueField = "TripTypeBID"; ddlTripTypeB.DataBind(); }
.Net已经为您管理了连接池,因此您无需担心像使用旧ASP那样重用连接。我总是会进行几次小型快速呼叫,而不是始终保持一次打开,因为通常不是所有时间都在打开。您还运行了站点代码,它们之间也在做一些事情。
现在,如果您要一个接一个地连续进行6次通话,那么打开一个电话并重用它可能很有意义。但是除此之外,我只是说要坚持自己的所作所为。
您可能要查看的唯一一件事是连接管理器,因此您不必一遍又一遍地在.net中创建连接对象。但这与数据库连接无关,而与对象创建无关。