【发布时间】:2015-02-27 11:39:34
【问题描述】:
我将 CommandTimeout 设置为 1 秒,并且没有按预期抛出 TimeoutException。我正在运行的查询大约需要 7-8 秒。但是,当我使用 ExecuteReader 执行查询而不是尝试填充 DataTable 时,超时确实有效。在创建命令后以及创建 DataAdapter 后,我尝试设置 CommandTimeout。
using(SqlConnection con = new SqlConnection("data source=*****;user id==*****;password==*****;initial catalog==*****;"))
{
string query = "select * from *****";
SqlCommand command = new SqlCommand(query, con);
//command.CommandTimeout = 1;
CostingDataSet cds = new CostingDataSet();
SqlDataAdapter da = new SqlDataAdapter(command);
da.SelectCommand.CommandTimeout = 1;
Stopwatch stopwatch = Stopwatch.StartNew();
da.Fill(cds.CostingData);
stopwatch.Stop();
Console.WriteLine(stopwatch.ElapsedMilliseconds);
}
【问题讨论】:
-
Connection.Open() ?
标签: c# .net datatable timeout sqldataadapter