【发布时间】:2013-05-14 11:57:20
【问题描述】:
如果连接c#中的sql查询出错,我该如何使用try catch?
如果我使用下面的简单代码,它确实可以工作,但发生错误所需的时间太长。如何让 try catch 更快地处理错误?
try
{
//sql command
}
catch
{
//display connection error
}
【问题讨论】:
-
看来你的命令超时时间太长了。如果您使用 ADO.NET、EF、Linq2SQL 或其他什么,可能会很有趣?
-
使用“throw new Exception()”快速抛出异常。 J/K
-
如果您担心的错误是超时,那么根据定义,您无法更快地处理它 - 超时的全部意义在于它花费了太长时间。如果您认为确定超时的时间过长,请减少数据库连接的超时限制。
-
更严重的是,您无法按照您的要求进行操作。查看您的错误是什么,并尝试找到在问题发生之前发现问题的方法。
-
您可能还想在另一个线程(任务)中运行您的查询,并使用信号量(例如)等待一段时间让查询运行,直到让查询继续运行,您考虑超时。