【问题标题】:How to ensure ConfigurationManager points to correct App.config如何确保 ConfigurationManager 指向正确的 App.config
【发布时间】:2014-06-26 07:10:01
【问题描述】:

最近新建了一个类库项目,添加了一个App.config文件。 App.config 文件包含数据库连接字符串。但是目前的代码

ConfigurationManager.ConnectionStrings["DBConnectionName"] 给我“null”。

但是 ConfigurationManager.ConnectionStrings[0] 给了我名为 "LocalSqlServer" 的结果。但是我的 App.config 没有这样的条目。

我在我的项目中没有看到任何其他配置文件。那为什么会这样呢?

我如何确保指向正确的 App.Config?

【问题讨论】:

  • 类库不使用它们自己的 App.config 文件 - 它们使用引用该库的应用程序的配置文件(Web 或 App)。将库项目的 App.config 中的任何相关设置/条目复制到使用应用程序的配置中。
  • 谢谢@Tim。现在工作正常

标签: c# .net windows-services


【解决方案1】:

App.Config 和其他配置文件从程序的入口点读取。因此,如果是应用程序,则读取存储在windows应用程序项目中的app.config文件。

LocalSqlServer 是未定义其他连接字符串时的默认 SQL 服务器。这就是它存在于ConnectionStrings 属性中的原因。

【讨论】:

    【解决方案2】:

    请将连接字符串添加到您的主应用程序(可执行文件)的 App.config 中。或者,如果您想定义自己的配置文件,请使用 ConfigurationManager.OpenExeConfiguration 方法。

    更多详情见以下链接: http://msdn.microsoft.com/en-us/library/ms224437.aspx

    【讨论】:

      猜你喜欢
      • 2013-09-06
      • 2012-09-23
      • 2017-12-02
      • 2010-10-09
      • 2011-02-17
      • 1970-01-01
      • 1970-01-01
      • 2016-07-21
      • 1970-01-01
      相关资源
      最近更新 更多