连接超时和命令超时有什么区别?
在我们的应用程序中,有时会显示超时错误。当我们将命令超时值增加到100(默认值为30)时,它的工作正常。增加命令超时值是否有任何问题。
谢谢,
马赫什
答案 0 :(得分:7)
ConnectionTimeout是您的代码在尝试打开与DB的连接时应该等待的时间
CommandTimeout是代码等待SQL代码执行的时间。
如果您达到命令超时,则SQL需要很长时间才能执行,因此您可能需要check your query。如果您的查询已经过优化,那么提高命令超时可能是让客户端工作的唯一方法。
答案 1 :(得分:5)
如上所述,连接超时是与DB服务器建立连接的超时。命令超时是命令执行的超时。
可以扩展命令超时,但在ASP.NET中执行此操作时,您应该也知道请求执行超时。您可以通过Server.ScriptTimeout
在代码中设置,也可以在httpRuntime/@executionTimeout
中全局设置。 .NET 2.0+的默认值为110秒。
但通常这很可能是构建应用程序的错误方法。除非您正在进行一些重要的在线报告,否则很少会被执行。