2012-01-26 13 views
3

変更することはできません。私はそれが新しい設定を保存しない理由がわからない私はapp.configファイル次のコードで間違って何

private static void UpdateAppSettings(string settingName, string settingValue) 
{ 
    if (settingName == null) throw new ArgumentNullException("settingName"); 
    if (settingValue == null) throw new ArgumentNullException("settingValue"); 

    var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 
    var appSettings = config.AppSettings; 

    var setting = appSettings.Settings[settingName]; 
    setting.Value = settingValue; 

    config.Save(ConfigurationSaveMode.Modified); 
    ConfigurationManager.RefreshSection("AppSettings"); 
} 

を。最初にapp.configファイルを開きます。 appsettingエリアに行った後。その後、特定のキーがsettingNameとして検出され、値がsettingValueに変更されます。その後、ファイルを保存して更新します。それはほとんど動作します。最大でconfig.Save(...)です。しかしその後、私は何が起こるか分からない。

+0

は、あなたがエラーを取得すると思う答えを持っていますか?ファイルは更新されていませんか?あなたの問題が何であるかについての詳細情報が必要です。 –

+0

デバッグモードまたはリリースモードで試してみましたか?限り、私はこれがリリースで適切な作品を覚えている限り。 – Steve

+0

以下を確認してください:http://stackoverflow.com/questions/758389/why-are-application-settings-read-only-in-app-config –

答えて

1

このquestionはあなたが求めているものと同じようです。

答えはこのようになります。

config.AppSettings[settingName] = settingValue; 

EDIT:

This questionは私が

config.AppSettings.Settings[settingName] 
+0

保護レベルのために動作しません! – aakpro

関連する問題