连接超时= 0 ????关于什么?超时值已超过1500

时间:2012-03-29 16:46:07

标签: c# sql-server-2005 timeout connection connection-string

System.Data.SqlClient.SqlConnection conec = new System.Data.SqlClient.SqlConnection("data source=" + servidor + "; initial catalog=" + basedatos + "; user id=" + usuario + "; password=" + contra + "; Connect Timeout=1500;  Packet Size=32767; ");

这是我的联系,但我得到timeout value expired 我把它改为0,我得到了同样的信息 但当我把它改为我的sqlcommand

System.Data.SqlClient.SqlCommand comando = new System.Data.SqlClient.SqlCommand(consulta, conexion);
            comando.CommandTimeout = 0;

它工作正常,如果我的连接字符串中有0,它为什么不起作用?什么是 区别?我已经听过连接生命周期但我不知道它。

2 个答案:

答案 0 :(得分:2)

尝试使用:

Connection Timeout=1500

而不是:

Connect Timeout=1500

(来自documentation。)

答案 1 :(得分:2)

您可以在连接字符串中设置连接超时,即建立连接时等待的最长时间。

您不能在连接字符串中设置CommandTimeout(命令完成执行的最长时间):必须在代码中设置。