2014-11-08 114 views
0

我有这样的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> 

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

这个想法是为用户提供一个易于阅读的描述,并将该描述与连接字符串关联以用于实体框架。

谢谢。

回答

1

要增加普通自定义键的,你可以使用以下命令:

<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> 

随口说说,我不知道,如果空间/特殊字符(即“本地(测试)”)将被允许在键或名称参数。我从来没有见过任何人在那里使用。我会使用LocalTest。 http://msdn.microsoft.com/en-us/library/ms254494(v=vs.110).aspx

+0

为什么如果我使用标签“appSettigns”它的工作原理和当我使用标签“DataBases”它不起作用? – 2014-11-08 15:23:27

+1

Web.config文件必须仅包含用于覆盖Machine.config文件中的设置的配置项的条目。一些额外的读物可能会有所帮助:http://support.microsoft.com/kb/815179#3 | http://msdn.microsoft.com/en-us/library/ms960520(v=cs.70).aspx | http://msdn.microsoft.com/en-us/library/ms178685(v=vs.100).aspx – 2014-11-08 15:53:42

相关问题