【发布时间】:2020-12-15 23:34:28
【问题描述】:
我的一个 vb 应用程序出现问题,它在一天中的某个时间崩溃。在我的代码中,只有 4 个地方可能是导致崩溃的原因。其中三个来自 SQLDataSource 查询,另一个在后面的代码中。我很确定后面的代码没有问题,因为我有一个 using 块。此外,在该块内部,我有一个 try catch finally ,在 finally 我正在处理命令以及连接和关闭连接的位置。我一直在阅读一些文章,这些文章告诉我应该使用 SqlDataSource“选定”事件来关闭连接。我试了一下,但没有成功。这是我收到的错误:
SqlException (0x80131904):执行超时已过期。在操作完成之前超时时间已过或服务器没有响应。
这让我觉得“选定”事件没有机会被解雇。所以我想我应该尝试“选择”事件。在其中,我试图抓住连接字符串并关闭它。但我不太确定我是否走在正确的道路上,因为我无法在该事件中捕获异常。有人可以帮我解决我面临的这个问题吗?
编辑: 这是我如何尝试使用选定事件来关闭连接的示例
If Not IsNothing(e.Exception) Then
Debug.Print("Exeception encounted while selecting for sqlData")
End If
e.ExceptionHandled = True
这是我如何尝试使用选择事件的示例(我无法确定此处是否引发了异常)。
Dim sqlDataConn As SqlConnection = New SqlConnection("MYConnectionString")
sqlDataConn.Dispose()
【问题讨论】:
-
最好的办法是在这里发布代码
标签: vb.net timeout sqlexception