Change in AppSettings needs restart my Application how can I avoid?

前端 未结 4 1733
野趣味
野趣味 2021-02-08 13:09

I\'m using C# .NET 2.0 Windows Application.

and I\'m using app.config for my Application Settings.

but change in AppSettings doesn\'t reflected runtime, it Needs

相关标签:
4条回答
  • 2021-02-08 13:32

    Alternatively, you could create a singleton 'Options' to hold on to your application settings and perform your read/writes for you. Once loaded, changing the .config doesn't require reloading, you simply set a property on the singleton and call your .Save() method.

    The 'runtime' version of your settings is in the singleton, no need to read from disk.

    0 讨论(0)
  • 2021-02-08 13:44
    ConfigurationManager.RefreshSection("appSettings");
    

    works!!

    But be careful that if we are in debug mode, the configuration file can be called xxxxx.vshost.exe.config, where xxxxx is your project name.

    0 讨论(0)
  • 2021-02-08 13:48

    Dont use ConfigurationManager to read settings, instead use:

            System.Configuration.ConfigurationManager.OpenExeConfiguration(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile).AppSettings.Settings["value"];
    
    0 讨论(0)
  • 2021-02-08 13:56

    You could try calling

    ConfigurationManager.RefreshSection("appSettings")
    to refresh the AppSettings section of the file from disk. Once they have been refreshed, you should be able to read the new values.

    I've just tested this and it does indeed work.

    0 讨论(0)
提交回复
热议问题