当我尝试从Web服务访问(打开与之连接的)脱机sql服务器实例(服务已关闭)时,没有引发异常,只是短暂的5秒钟超时,然后返回(我将断点输出放在控制器中) ,则不确定在打开调用期间连接对象返回了什么)。
我正在尝试模拟数据库无法用于Web服务的情况,并认为会引发异常,并且我只能记录该错误。
关于如何正确检测数据库连接问题的任何建议(我想我需要查看一下调用open时连接对象返回的内容)。最好有一个异常冒泡。
谢谢。
除非您的线程在Web服务器超时之前被中止,否则将肯定会引发连接超时。在控制器中放置try / catch肯定会捕获数据库连接超时。
您应该发布代码,这SqlConnection.Open()
肯定会引发异常,但是如果您使用其他一些调用/代码打开连接并且被吞噬了,那么显然很难确定根本原因。
我的猜测是,您要找回Connection
未连接的对象,以检查它是否已连接:
if (conn.State == ConnectionState.Closed)
{
...
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句