C# OleDbConnection con set to timeout



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

相关内容

  • 没有找到相关文章

最新更新