Очиститель настроек (или других свойств) прокси класса
Существует ли распространенная практика реализации для сокращения кода (особенно дублирующихся строк) здесь?
public class Settings {
private static settings = Properties.Settings.Default;
public string MRUList {
get {
return settings["MRUList"];
}
set {
settings["MRUList"] = value;
}
}
public string AnotherSetting {
get {
return settings["AnotherSetting"];
}
set {
settings["AnotherSetting"] = value;
}
}
...
}
Я не знаю, может быть, существующий пакет NuGet, который излучает класс настроек для инъекций на основе интерфейса? (ПОМНИТЕ: Это пример подхода к этой проблеме. Если вы думаете, что моя идея глупа, предложите другую, пожалуйста. Всегда должен быть ненавистник...)
public interface Settings {
public string MRUList { get; set; }
public string AnotherSetting { get; set; }
}
MappedSettings Settings = CrazyMapper.Generate<Settings>(Properties.Settings.Default);
AutoMapper может технически сделать это, я полагаю, за исключением того:
- Скопируйте все настройки каждый раз, когда я получаю доступ к настройкам
- Не содержит актуальную информацию о настройках