Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#OLEDB连接con设置为超时_C#_Visual Studio_Timeout_Database Connection - Fatal编程技术网

C#OLEDB连接con设置为超时

C#OLEDB连接con设置为超时,c#,visual-studio,timeout,database-connection,C#,Visual Studio,Timeout,Database Connection,我有一个可以查询Access数据库并显示数据的应用程序。我希望连接(con)在2分钟后超时。有人对我如何编写代码有什么建议吗 这就是我在一开始所拥有的 OleDbConnection con; OleDbDataReader dr; OleDbCommand cmd; con.Open(); cmd = new OleDbCommand(str, con); dr = cmd.ExecuteReader(); 谢谢不要共享连接,在需要时创建连接,并使用block将其包装起来 如果需要设置超时

我有一个可以查询Access数据库并显示数据的应用程序。我希望连接(con)在2分钟后超时。有人对我如何编写代码有什么建议吗

这就是我在一开始所拥有的

OleDbConnection con;
OleDbDataReader dr;
OleDbCommand cmd;

con.Open();
cmd = new OleDbCommand(str, con);
dr = cmd.ExecuteReader();

谢谢

不要共享连接,在需要时创建连接,并使用block将其包装起来

如果需要设置超时,可以使用连接字符串中的属性进行设置(例如,
“…;Connect timeout=30”


您是否尝试了超时参数

OleDbCommand.CommandTimeout
属性-在执行查询期间需要超时时


OleDbConnection.ConnectionTimeout
属性-当您在建立连接时需要超时时

@Damith是关闭的,但不幸的是,
ConnectionTimeout
属性是只读的。您必须使用
;Connect timeout=30;
来设置连接字符串中的超时。

完美!!谢谢您,先生d、 ..显然,提供商并不总是允许设置
连接超时
连接超时
连接超时
:(我最后在SQL Server端设置了超时。这并不理想。
using (OleDbConnection con = new OleDbConnection(connectionString))
using (OleDbCommand cmd = new OleDbCommand(str, con))
{
   con.Open();
   using (OleDbDataReader dr = cmd.ExecuteReader())
   {

   }
}