【发布时间】:2015-11-06 00:40:25
【问题描述】:
收到错误提示:
“超时。在操作完成之前超时时间已过,或者服务器没有响应。” 它获得 700 条记录,但需要 45 秒。我认为这是问题所在。 在这段代码中如何添加 cmd.CommandTimeout = 60;
我的代码是:
Dap_Proj = new SqlDataAdapter("select LinkId,LinkName,CategoryId, ReportLinks,SubmissionStatus,convert(nvarchar(18),LnkSubmsnDate) as LnkSubmsnDate, convert(nvarchar(18), LnkUpdateDate) as LnkUpdateDate,LnkSubmtdBy,K.KeyWord,RenewalDate from tbl_Link L left join Tbl_keywords K on L.KeywordID=K.KeywordID where
(SubmissionStatus='Approved'or SubmissionStatus='Waiting for Approval') and LnkSubmtdBy='" + Session["LoginUser"].ToString() + "' and Convert(Char(4),LnkSubmsnDate,100) in (select Convert(Char(4),LnkSubmsnDate,100) from tbl_Link )order by case when RenewalDate is null then 1 else 0 end,RenewalDate", connection);
ds = new DataSet();
Dap_Proj.Fill(ds);
【问题讨论】:
-
问题似乎与您的数据库有关。您的查询太复杂或返回许多行。在 sql server 中执行您的查询并检查它是否执行
-
尝试声明您的命令,然后将其超时值设置为 0
SqlCommand cmd = new SqlCommand("YourQuery");cmd.CommandTimeout = 0; -
它执行和获取记录但需要 44 秒。并检索 700 条记录@shreesha
-
commndtimeout = 0 意味着什么。没有超时?如果我给 timeout = 60,会发生什么@Dumisani
-
是 0 表示“不要超时”。如果你给它 60,它会在一分钟后超时。
标签: c# gridview ado.net dataset sqldataadapter