【问题标题】:Retrieving default database connection string in code在代码中检索默认数据库连接字符串
【发布时间】:2016-08-01 20:38:07
【问题描述】:

我正在使用当前公司的开发团队使用的现有结构。为了更改应用程序中的连接字符串,团队创建了一个名为“defaultDatabase”的 XML 节点(见下文):

  </configSections>
<dataConfiguration defaultDatabase="Development" />
  <connectionStrings>
<add name="Development" connectionString="Data source=DVHQSQL01; Initial Catalog=db; User ID=id; Password=password"/>
  </connectionStrings>

...对于不同的服务器环境,XML 中将会有更多的连接字符串(这里没有显示,而是“Testing”、“Staging”、“Production”等)

我正在创建一个具有使用默认连接的不同功能的类。我知道一条路线是通过ConfigurationManager,如下所示:

https://social.msdn.microsoft.com/Forums/en-US/9a8c9f5a-092e-4c4a-87bb-9f35d8f55da1/get-connection-string-from-appconfig-file?forum=adodotnetdataproviders

如果您可以在代码中更改连接字符串名称,那就太好了,但是我们使用 defaultDatabase 节点可以在不重建的情况下从不同的环境进行更改。

有人对这种方法有经验吗?如何使用 defaultDatabase 节点获取正确的连接字符串?

【问题讨论】:

  • &lt;connectionStrings&gt; &lt;add name="default" ... 怎么样。多年来,我们在多连接字符串环境中使用它。
  • 您确实应该编辑您的问题并从连接字符串中删除您的密码和用户 ID。只需将其替换为 &lt;mypassword&gt; 之类的内容,因为任何访问此页面的人都可以看到。
  • @Icemanind 已编辑。
  • @AlexB。我喜欢这个想法,并将进一步探索它,谢谢!
  • @AlexB。如果您提交您的想法作为答案,我可以将其标记为正确。你在一分钟内解决了我的问题。

标签: vb.net connection-string default-database


【解决方案1】:

您可以在config 中拥有任意数量的连接字符串,您所要做的就是给它们起不同的名称。

<connectionStrings>
    <add name="default" connectionString=""/>
    <add name="anotherOne" connectionString=""/>
    ...
      </connectionStrings>

【讨论】:

    【解决方案2】:

    只需在连接字符串区域设置default连接即可:

    <connectionStrings>
       <add name="default" connectionString="..."/>
    </connectionStrings>
    

    如果你有更多的连接,你可以用同样的方式添加它们:

    <connectionStrings>
       <add name="default" connectionString="..."/>
       <add name="special1" connectionString="..."/>
       <add name="special2" connectionString="..."/>
    </connectionStrings>
    

    【讨论】:

      猜你喜欢
      • 2019-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 2018-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多