Получить настройки по умолчанию или пользовательские настройки

Я хочу настроить следующее поведение:

Мое приложение использует файл конфигурации, созданный с помощью ConfigDesigner. Для этого я создал Default-Configuration

namespace MyApp.Configuration {


[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
public sealed partial class MyConfig: global::System.Configuration.ApplicationSettingsBase {


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

Через звонок через MyConfig.Default.SizeЯ получаю значение, которое хранится на MyApp.exe.config,

Но теперь я хочу выбрать время выполнения (возможно, что эти Bool может меняться несколько раз), если пользователю разрешено использовать MyApp.exe.config, Так что я изменил сеттер моего MyConfig.Default-Свойство:

private static MyConfig userInstance = ((MyConfig)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new MyConfig())));
public static MyConfig Default
    {
        get
        {
            if(ConfigIsAllowed)
                return userInstance;
            else
            {
                /* Here I wanna return the default-values */
            }
        }
    }

Но я понятия не имею, как вернуть настройки по умолчанию. Я знаю, что есть возможность Reset() конфиг, но я не хочу сбрасывать файл, где хранится конфиг. Я только хочу вернуть значения по умолчанию. Я также нашел решение вернуть одно значение по умолчанию через MyConfig.Default.Properties["NAME"].DefaultValue, но с помощью этого я не могу использовать значение конфигурации, как MyConfig.Default.Size,

Как лучше всего получить конфигурацию по умолчанию или конфигурацию пользователя?

0 ответов

Другие вопросы по тегам