随着数据库数据的不断增大,查询时间也随之增长。今天在之前一个项目中执行数据库查询超过30秒就报“Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。”了,网上找了些文章,是在.config文件中,连接字符串上加如下代码。
Connect Timeout=18000;
<add name="ConStr" connectionString="Data Source=127.0.0.1;Initial Catalog=HXMRP_PRD;User ID=sa;Password=sa_sa;Max Pool Size=150;Connect Timeout=18000;" />
也有的说是Connect Timeout=500;
但是似乎没有解决我的问题,同样30秒后继续报错………………
后在CSDN博客,找到解决方法:http://blog.csdn.net/ulark/article/details/5208779 (原文)
设置SqlCommand 的 CommandTimeout 代码如下:
SqlCommand cmd = new SqlCommand(); cmd.CommandTimeout = 180;
再运行,即解决,这里设置的时间的180秒,即三分钟!可根据需要自行设置。