【问题标题】:Same connection even though the ODBC data source has changed即使 ODBC 数据源已更改,连接也相同
【发布时间】:2009-04-20 12:37:33
【问题描述】:

我有一个 .Net 服务,它有一个包含 ODBC 连接的字符串列表,我在循环中使用这些服务来检查多个数据库是否有要处理的任务(例如轮询)。

但是,如果我更改 ODBC 连接指向的位置..由于某种原因更改其默认数据库,即使我只存储 ODBC 连接的字符串名称,它也不会获取更改,直到我重新启动应用。

.net 是否以某种方式在启动时缓存所有 odbc 连接?

我该如何解决这个问题?

干杯。

【问题讨论】:

    标签: c# caching windows-services odbc


    【解决方案1】:

    ODBC Data Sources 控制面板窗口检查您正在使用的 ODBC 驱动程序是否启用了Connection Pooling(这不是 .NET 问题)。成功的连接将保留在池中,而不会刷新其新的连接属性。

    【讨论】:

      【解决方案2】:

      如果您的设置存储在 app.config 中,这里有一个问题可能会有所帮助:

      Is switching app.config at runtime possible?

      【讨论】:

      • 我将它们存储在一个局部变量中。例如。当 ODBC 连接具有相同的名称时,它就是像“Connection1”这样的字符串。然后我做 new OdbcConnection("uid=Connection1,Uid=user,Pwd=pwd");就是这样。 “Connection1”永远不会改变,只有 ODBC 连接本身会改变。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-02
      • 2011-08-12
      • 2012-09-29
      • 1970-01-01
      • 1970-01-01
      • 2014-03-14
      • 2020-11-30
      相关资源
      最近更新 更多