0

当我通过 asp.net 执行存储过程时,应用程序抛出connect timeout expire异常。但是如果我通过查询窗口执行存储过程,它会在 46 秒内成功执行。

你对这个问题有任何想法吗?

4

4 回答 4

1

您可以在连接字符串中设置超时值,但是要为要执行的特定存储过程设置超时值,您可以使用@doterob建议的方式

检查以下链接:

连接超时

命令超时

编辑:

您可能想查看为什么执行存储过程需要这么多时间。

于 2013-03-11T10:01:50.783 回答
0

使用这段代码检查它花费了多少时间

 SqlCommand cmd = new SqlCommand();
 cmd.CommandTimeout = 100;(100 is in second)

通过增加 CommandTimeout 你可以检查。

于 2013-03-11T10:02:46.550 回答
0

它可能是sql command execution times out 您的web server times out. 既然你说在 SSMS 中需要 46 秒,我认为这是你的网络服务器超时。我建议您将两个超时值都增加到合适的值。

对于 IIS,您可以使用 IIS 管理器来执行此操作。这是IIS 7.0 的一个很好的链接

于 2013-03-11T10:05:23.573 回答
0

执行产生超时异常。您可以更改超时参数

当您创建 de SqlCommand 来执行存储过程时,您可以将超时以秒为单位

SqlCommand command = new SqlCommand();
command.CommandTimeout = 100; //100 seconds
于 2013-03-11T09:58:22.283 回答