如何在app.config中添加自定义配置设置?

时间:2014-11-08 12:43:00

标签: c# app-config

我有这个app.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      <section name="Me.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
      <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    </sectionGroup>

    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  <connectionStrings>
    <add name="MyConnectionString01" connectionString="...." />
    <add name="MyConnectionString02" connectionString="...." />
  </connectionStrings>  

  <applicationSettings>
    <Me.Properties.Settings>
      <setting name="BaseDatosMedioAcceso" serializeAs="String">
        <value>SQLServerEF6</value>
      </setting>
    </Me.Properties.Settings>
  </applicationSettings>


  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/></startup>
</configuration>

但我想添加这种设置:

<DataBases>
   <add Description="Local" ConnectionString="MyConnectionString01"/>
   <add Description="Local (Test)" ConnectionString="MyConnectionString02"/>
</DataBases>

但我不知道tu把这个配置放在哪里。我试图创建一个配置部分,但它不起作用。

我们的想法是为用户提供易于阅读的描述,并将此描述与用于实体框架的连接字符串相关联。

感谢。

1 个答案:

答案 0 :(得分:2)

要添加通用自定义键,您可以使用以下内容:

<configuration>
  <appSettings>
    <add key="Local" value="MyConnectionString01" />
    <add key="LocalTest" value="MyConnectionString02" />
  </appSettings>
</configuration>

要专门添加数据库连接字符串,请使用以下命令:

<configuration>
  <connectionStrings>
     <add name="Local" connectionString="MyConnectionString01"/>
     <add name="LocalTest" connectionString="MyConnectionString02"/>
  </connectionStrings>
</configuration>

随便,我不确定key或name参数中是否允许使用空格/特殊字符(即“Local(Test)”)。我从来没有见过有人在那里使用过。我会改用LocalTest。 http://msdn.microsoft.com/en-us/library/ms254494(v=vs.110).aspx