1

嘿大家, 如何在編譯的 「回報((字符串)(本[」 TARGETDIR 「]修復編譯器錯誤));」:C# - 編譯器錯誤:System.Configuration.ConfigurationErrorsException了未處理

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 

這裏的屬性目錄下我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文件位於何處?

回答

0

驗證UserScopedSettingAttribute與正確的設置部分匹配。

如果我記得是正確的,是的,區分大小寫。

通常,我會添加一個設置,保存並關閉,然後再次打開設置設計器,然後刪除設置,保存並關閉。這將使設計師同步。第一次在計算機上打開設計器時,我看到它們不同步。 (例如,當你從源頭控制得到。)

+0

感謝您的迴應!我怎麼做?去配置下的UserScopedSettingAttribute的定義給了我 - 公共密封的類UserScopedSettingAttribute:SettingAttribute {/ /初始化一個新的System.Configuration.UserScopedSettingAttribute實例 public UserScopedSettingAttribute(); } – 2011-03-15 19:43:32

+0

@Brian McCarthy:在你的app.config中有一個用戶部分和一個應用程序部分。我無法從您發佈的章節中看出來。由於您指定了UserScopedSettingAttribute,因此您必須在配置文件中包含完整的部分。確保你的部分是完整的。 (有效的XML) – AMissico 2011-03-15 21:11:52

1

我通過在Settings1.Designer.cs CCP_Utility.Settings1下改變sourceDir和TARGETDIR的capitilzation沒有編譯器錯誤編譯應用程序文件,如下所示:

<CCP_Utility.Settings1> 
    <setting name="SourceDir" serializeAs="String"> 
     <value /> 
    </setting> 
    <setting name="TargetDir" serializeAs="String"> 
     <value /> 
    </setting> 
</CCP_Utility.Settings1>