我有一个查询 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
属性 - 当您在建立连接时需要超时时