1

大家好,如何在“ return ((string)(this["TargetDir"]));上编译时修复编译器错误:

  System.Configuration.ConfigurationErrorsException was unhandled
  Configuration system failed to initialize
  {"Unrecognized configuration section userSettings/CCP.Settings1. (C:\\Users\\bmccarthy\\Documents\\Visual Studio 2008\\Projects\\CCP Utility\\CCP Utility\\bin\\Debug\\CCP_Utility.exe.config line 21)"}

  A first chance exception of type 'System.Configuration.ConfigurationErrorsException' occurred in System.Configuration.dll

这是我在 Properties 目录下的 Settings.Designer.cs 文件中的代码:

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Configuration.DefaultSettingValueAttribute("")]
    public string TargetDir {
        get {
            return ((string)(this["TargetDir"]));
        }
        set {
            this["TargetDir"] = value;
        }
    }

这是 bin 文件夹中 CCP_Utility.exe.config 的代码:

  <CCP_Utility.Properties.Settings>
    <setting name="SourceDir" serializeAs="String">
      <value />
    </setting>
    <setting name="TargetDir" serializeAs="String">
      <value />
    </setting>
    <setting name="CorpID" serializeAs="String">
      <value />
    </setting>
  </CCP_Utility.Properties.Settings>

    <CCP_Utility.Settings1>
        <setting name="sourceDir" serializeAs="String">
            <value />
        </setting>
        <setting name="targetDir" serializeAs="String">
            <value />
        </setting>
    </CCP_Utility.Settings1>

< CCP_Utility.Settings1 > 标签必须匹配什么?App.config 还有什么?

大小写重要吗?我将变量声明为 TargetDir Settings.Settings....

System.Configuration.dll 文件位于何处?

4

2 回答 2

1

通过更改 Settings1.Designer.cs 文件中 CCP_Utility.Settings1 下的 sourceDir 和 targetDir 的大写,我使应用程序编译没有编译器错误,如下所示:

<CCP_Utility.Settings1>
    <setting name="SourceDir" serializeAs="String">
        <value />
    </setting>
    <setting name="TargetDir" serializeAs="String">
        <value />
    </setting>
</CCP_Utility.Settings1>
于 2011-03-15T20:03:37.697 回答
0

验证 UserScopedSettingAttribute 是否与正确的设置部分匹配。

如果我没记错的话,是的,区分大小写。

通常,我会添加一个设置,保存并关闭,然后再次打开设置设计器,删除设置,保存并关闭。这将使设计师同步。第一次在计算机上打开设计器时,我已经看到它们不同步。(例如,当您从源代码管理中获取时。)

于 2011-03-15T19:39:38.053 回答