配置系统初始化失败==>无法识别的配置部分 [英] configuration system failed to initialize ==> unrecognized configuration section

查看:31
本文介绍了配置系统初始化失败==>无法识别的配置部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我什至不知道我是否可以做我正在尝试的事情,但我已经从多个项目中导入了表单并添加了对这些项目的引用.每个项目都有一组不同的连接字符串,我试图让它们在 App.config 中共存,我可以在其中按 SECTION(用户从组合框选择连接)进行过滤.我希望我可以通过实现 ConfigSections 来做到这一点.如果可行,我显然不知道该怎么做.

I don't even know if I can do what I'm attempting but I've imported forms from several projects and added references to those projects. Each project has a different set of connection strings and I'm trying to get them to coexist in App.config where I can filter by SECTION (Users select connections from comboboxes). I am hoping I can do this by implementing ConfigSections. If it's doable I obviously don't know how.

附件是我的 App.config.我收到错误配置系统初始化失败",当我深入了解细节时,它说无法识别的配置部分 amSettings

Attached is my App.config. I'm getting the error 'configuration system failed to initialize' and when I drill into the detail it says 'unrecognized configuration section amSettings

我正在尝试做的事情可能吗?如果是这样,我需要更正什么?

Is what I'm trying to do possible? If so, what do I need to correct?

<?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="amSettings.Properties.Settings" 
                     type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
                     allowExeDefinition="MachineToLocalUser" 
                     requirePermission="false"/>
            <section name="cbSettings.Properties.Settings"
         type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
         requirePermission="false"/>
        </sectionGroup>
    </configSections>

    <amSettings>
        <add key="VX130 Attribute Map Connections" value="Sample Console Application" />
        <add key="Region 1 VX130"   value="Server=R01SCRDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 2 VX130"   value="Server=R02LITDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 3 VX130"   value="Server=R03DURDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 4 VX130"   value="Server=R04PHIDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="CDW"  value="Server=VHACDWA01;Database=;Trusted_Connection=true;"/>
    </amSettings>
    <cbSettings>
        <add key="CDW Class Builder Connections" value="Sample Console Application" />
        <add key="Region 1 Class Build"     value="Server=R01SCRDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 2 Class Build"     value="Server=R02LITDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 3 Class Build"     value="Server=R03DURDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="Region 4 Class Build"     value="Server=R04PHIDWH82;Database=R01_FDW;Trusted_Connection=true;"/>
        <add key="DEVELOPMENT Class Build"  value="Server=VHACDWA01;Database=Util;Trusted_Connection=true;"/>
        <add key="PREVIEW Class Build"  value="Server=VHACDWA01;Database=Util;Trusted_Connection=true;"/>
        <add key="VERSION Class Build"  value="Server=VHACDWA01;Database=Util;Trusted_Connection=true;"/>
    </cbSettings>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>

推荐答案

将部分名称从 amSettings.Properties.Settings 更改为 amSettings 并将 cbSettings.Properties.Settings 更改为 cbSettings

Change the section name from amSettings.Properties.Settings to amSettings and cbSettings.Properties.Settings to cbSettings

例如

    `<section name="amSettings" `

这是一个综合示例:

如果您将配置文件更改为:

If you change your config file to this:

    <configSections>
        <section name="amSettings"
                 type="System.Configuration.AppSettingsSection"
                 allowExeDefinition="MachineToLocalUser"
                 requirePermission="false"/>
        <section name="cbSettings"
     type="System.Configuration.AppSettingsSection"
     requirePermission="false"/>
  </configSections>
  <amSettings>
      <add key="ABC" value="DEF"/>
  </amSettings>

然后您可以使用此代码访问密钥 ABC:

Then you can access the key ABC using this code:

        var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        AppSettingsSection appSettingSection = (AppSettingsSection)config.GetSection("amSettings");
        var a = appSettingSection.Settings["ABC"].Value;

这篇关于配置系统初始化失败==>无法识别的配置部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆