我有一个查询Access数据库并显示数据的应用程序。 我想连接(CON)2分钟后超时。 有没有人对我怎么可以编写这有什么建议?
这就是我在开始
OleDbConnection con;
OleDbDataReader dr;
OleDbCommand cmd;
con.Open();
cmd = new OleDbCommand(str, con);
dr = cmd.ExecuteReader();
谢谢
我有一个查询Access数据库并显示数据的应用程序。 我想连接(CON)2分钟后超时。 有没有人对我怎么可以编写这有什么建议?
这就是我在开始
OleDbConnection con;
OleDbDataReader dr;
OleDbCommand cmd;
con.Open();
cmd = new OleDbCommand(str, con);
dr = cmd.ExecuteReader();
谢谢
@Damith接近,但不幸的是ConnectionTimeout
属性为只读。 你必须使用,而不是设置连接字符串中的超时... ;Connect Timeout=30;
。 这里的文档 。
不要共享连接,创建连接时,你需要通过包装它using block
,
如果您需要设置超时时间,您可以通过使用设置ConnectionTimeout
在连接字符串属性(如".....;Connect Timeout=30"
using (OleDbConnection con = new OleDbConnection(connectionString))
using (OleDbCommand cmd = new OleDbCommand(str, con))
{
con.Open();
using (OleDbDataReader dr = cmd.ExecuteReader())
{
}
}
你有没有尝试超时参数,
OleDbCommand.CommandTimeout
物业-当你查询的执行过程中需要超时
OleDbConnection.ConnectionTimeout
物业-当你需要超时whilemaking连接