简体   繁体   English

System.Configuration.ConfigurationErrorsException-无法识别的元素“设置”

[英]System.Configuration.ConfigurationErrorsException - Unrecognized element 'setting'

Unrecognized element 'setting'. 无法识别的元素“设置”。 (C:\\Dev\\DOT.NET\\AutoPay\\ibeam.config line 15) (C:\\ Dev \\ DOT.NET \\ AutoPay \\ ibeam.config第15行)

AppInfo.Sections.Get("AutoPay.Common.Credentials") 'AppInfo.Sections.Get("AutoPay.Common.Credentials")' threw an exception of type 'System.Configuration.ConfigurationErrorsException' System.Configuration.ConfigurationSection {System.Configuration.ConfigurationErrorsException} AppInfo.Sections.Get(“ AutoPay.Common.Credentials”)'AppInfo.Sections.Get(“ AutoPay.Common.Credentials”)'引发了类型为'System.Configuration.ConfigurationErrorsException'的异常System.Configuration.ConfigurationSection {系统。 Configuration.ConfigurationErrorsException}

My config file : 我的配置文件

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
<sectionGroup name="AppInfo" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
  <section name="AutoPay.Common.Credentials" 
           type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
               allowExeDefinition="MachineToLocalUser" 
               requirePermission="false" />
    </sectionGroup>
  </configSections>

  <AppInfo>
    <AutoPay.Common.Credentials>
      <setting name="UserName" serializeAs="String"><value>********</value></setting>
      <setting name="Password" serializeAs="String"><value>********</value></setting>
      <setting name="ServiceUrl" serializeAs="String"><value>********</value></setting>
    </AutoPay.Common.Credentials>
  </AppInfo>
</configuration>

Base (abstract) class : 基础(抽象)类

public abstract class BaseConfigInfo : ConfigurationSectionGroup
{
    protected Configuration Configuration;
    protected ConfigurationSectionGroup AppInfo;
    protected ClientSettingsSection Credentials;

    protected BaseConfigInfo(string configFile)
    {
        var fileMap = new ConfigurationFileMap(configFile);
        Configuration = ConfigurationManager.OpenMappedMachineConfiguration(fileMap);
        AppInfo = Configuration.GetSectionGroup("AppInfo");

        // THIS IS WHERE THE ERROR POPS //
        Credentials = (ClientSettingsSection)AppInfo.Sections.Get("AutoPay.Common.Credentials");
    }

    protected string GetCredentialsString(string kvpName)
    {
        var setting = Credentials.Settings.Get(kvpName);
        return setting.Value.ValueXml.InnerText;
    }

    public string UserName { get { return GetCredentialsString("UserName"); } }
    public string Password { get { return GetCredentialsString("Password"); } }
    public string ServiceUrl { get { return GetCredentialsString("ServiceUrl"); } }
}

Sample concrete class : 样例课程

public class ConfigInfoIbeam : BaseConfigInfo
{
    public ConfigInfoIbeam() : base(ConfigurationManager.AppSettings["ConfigInfoIbeam"]) { }
}

I know I am missing something simple here. 我知道我在这里缺少一些简单的东西。 I'm running in .NET 4. Nothing too usefull showing up when I try to google for this error. 我正在.NET 4中运行。当我尝试用Google搜索此错误时,没有什么显示的有用。 Any ideas? 有任何想法吗?

I found the problem. 我发现了问题。 In my config I had this: 在我的配置中,我有:

  <AppInfo>
    <AutoPay.Common.Credentials>
      <setting name="UserName" serializeAs="String"><value>********</value></setting>
      <setting name="Password" serializeAs="String"><value>********</value></setting>
      <setting name="ServiceUrl" serializeAs="String"><value>********</value></setting>
    </AutoPay.Common.Credentials>
  </AppInfo>

I changed it to: 我将其更改为:

  <AppInfo>
    <AutoPay.Common.Credentials>
      <setting name="UserName" serializeAs="String">
        <value>********</value>
      </setting>
      <setting name="Password" serializeAs="String">
        <value>********</value>
      </setting>
      <setting name="ServiceUrl" serializeAs="String">
        <value>********</value>
      </setting>
    </AutoPay.Common.Credentials>
  </AppInfo>

Don't ask me why the underlying xml reader cannot differentiate between the two. 不要问我为什么底层的xml阅读器不能区分两者。 However, problem solved! 但是,问题解决了! grrrr... GRRRR ...

我认为您需要<settings> </settings>包装三个<setting> .....

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 C#WCF System.Configuration.ConfigurationErrorsException:无法识别的元素&#39;ManagedService&#39; - C# WCF System.Configuration.ConfigurationErrorsException: Unrecognized element 'ManagedService' System.Configuration.ConfigurationErrorsException - System.Configuration.ConfigurationErrorsException WCF:System.Configuration.ConfigurationErrorsException - WCF: System.Configuration.ConfigurationErrorsException &#39;System.Configuration.ConfigurationErrorsException:请求的数据库WebBank未在配置中定义 - 'System.Configuration.ConfigurationErrorsException: The requested database WebBank is not defined in configuration C#-编译器错误:未处理System.Configuration.ConfigurationErrorsException - C# - Compiler Error: System.Configuration.ConfigurationErrorsException was unhandled c#:System.Configuration.ConfigurationErrorsException(临时文件) - c#: System.Configuration.ConfigurationErrorsException (empity file) 配置系统无法初始化System.Configuration.dll中发生的“ System.Configuration.ConfigurationErrorsException” - Configuration system failed to initialize 'System.Configuration.ConfigurationErrorsException' occurred in System.Configuration.dll System.Configuration.dll中发生“ System.Configuration.ConfigurationErrorsException”,已包含System.Configure - 'System.Configuration.ConfigurationErrorsException' occurred in System.Configuration.dll, System.Configure already included Prism 6 WPF应用程序启动时,将引发System.Configuration.dll中的“ System.Configuration.ConfigurationErrorsException” - 'System.Configuration.ConfigurationErrorsException' in System.Configuration.dll is thrown when Prism 6 WPF application starts System.Configuration.dll 中出现“System.Configuration.ConfigurationErrorsException”类型的未处理异常 - An unhandled exception of type 'System.Configuration.ConfigurationErrorsException' occurred in System.Configuration.dll
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM