我在傳統應用程序中使用ADO.NET(.NET 1.1)。我知道DataAdapter.Fill()打開和關閉連接,如果連接尚未在賦予DataAdapter之前手動打開。在引發異常時DataAdapter.Fill()是否關閉其連接?
我的問題:如果.Fill()導致異常,它是否也關閉連接?(由於SQL Server無法訪問,或其他)。它是否泄漏連接或者是否有內置的Finally子句以確保連接正在關閉。
代碼示例:
Dim cmd As New SqlCommand
Dim da As New SqlDataAdapter
Dim ds As New DataSet
cmd.Connection = New SqlConnection(strConnection)
cmd.CommandText = strSQL
da.SelectCommand = cmd
da.Fill(ds)
不知道它到底我會認爲它確實如此。但是,您可以使用Reflector(http://www.red-gate.com/products/reflector/)查看實現並查看它是否最終實現。 – AxelEckenberger 2010-03-18 19:47:42