Настройки хранятся в иерархическом виде в json формате. При запуске приложения читаются в объект, например:
class Settings
{
public int Param1 {get; set;}
public ComplexSetting ComplexParam1 {get; set;}
public ComplexSetting ComplexParam2 {get; set;}
}
class ComplexSetting
{
public string Param15 {get; set;}
public string Param16 {get; set;}
}
Приложение еще свежее, постоянно развивается, поэтому нередко возникает необходимость добавить или удалить параметры, либо объединить их в отдельный объект.
Для БД есть механизм миграций, а есть ли что-то подобное для конфигурационных файлов?
То есть, нужна бибилиотека, которая для конфигурационных файлов бы:
1. Отслеживала версию настроек
2. Предоставляла методы для трансформации настроек ( добавление, удаление полей, объектов, изменение структуры)
3. Позволяла любую версию настроек обновить до актуальной
Формат хранения настроек вторичен: json, xml, toml и т.д.
Есть такие?
Мне найти не удалось, либо не так искал, либо решаю проблему не стой стороны?