如何读取设置文件创建的连接字符串?

时间:2012-05-23 21:18:33

标签: c# config windows-console

当我刚拿到app.config时,每当我尝试使用ConfigurationManager.AppSettings [0]或ConfigurationManager.AppSettings [“keyName”]时,我得到一个null。所以我尝试使用* .settings文件创建了一个看起来像这样的app.config

<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
      <section name="IndexLoader.IndexLoader" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    </sectionGroup>
  </configSections>
  <applicationSettings>
    <IndexLoader.IndexLoader>
      <setting name="ConnectionString" serializeAs="String">
        <value>INITIAL CATALOG=xxx;DATA SOURCE=xxx;User ID=xxx;Password=xxx;Application Name=xxx;</value>
      </setting>
    </IndexLoader.IndexLoader>
  </applicationSettings>
</configuration>

现在如何使用C#读取此连接字符串?

该解决方案有多个项目,其中许多都有配置文件。有没有办法指定我想要使用代码项目中的配置文件?

1 个答案:

答案 0 :(得分:5)

applicationSettings不是appSettings。 要在applicationSettings中读取条目,请使用

string myCnStr = Properties.Settings.Default.ConnectionString;

在你的情况下,它将是

string myCnStr =IndexLoader.IndexLoader.Default.ConnectionString;

但是ConnectionString在app.config中有一个专用部分,应该存储在那里 并从ConfigurationManager.ConnectionStrings集合中读取

See here参考