我遇到了asp.net Web服务的问题,这些服务随机出现“sql transaction已完成不再可用”等错误,“事务已经提交......” 在阅读了大量的帖子后,我认为共享连接问题的问题是我无法找到问题所在。 从0开始,我想创建一个“2个porpuoses类” - 确保连接已关闭 - 少编码 简单的类有两个方法GDT(Give DataTable)和Ejecutar(用西班牙语执行)
¿任何人都可以告诉我这个课程是否适合没有共享连接的问题?
Public Class clsAccesoBD2
Public Function GDT(ByVal strSql As String) As DataTable
Try
Using Cnn As New SqlConnection(ConfigurationManager.ConnectionStrings("CadenaPEA").ConnectionString)
Using da As New SqlDataAdapter(strSql, Cnn)
Using dt As New DataTable
da.Fill(dt)
Return dt
End Using
End Using
End Using
Catch ex As Exception
'Log code here
投掷 结束尝试 结束功能
Public Function Ejecutar(ByVal strSql As String) As Integer
Try
Using Cnn As New SqlConnection(ConfigurationManager.ConnectionStrings("CadenaPEA").ConnectionString)
Using Cb As New SqlCommand(strSql, Cnn)
Dim RegistrosAfectados As Integer
Cnn.Open()
RegistrosAfectados = Cb.ExecuteNonQuery()
Cnn.Close()
Return RegistrosAfectados
End Using
End Using
Catch ex As Exception
'Log code here
Throw
End Try
End Function
结束班
角城
答案 0 :(得分:0)
在Cnn.Close()
构造的finally
块中关闭数据库连接(即try-catch-finally
)