Config
fusion.<env>.json и SettingsStore в C# (FusionFramework)
Обзор
Настройки загружаются через FFI из тех же файлов fusion.<env>.json, что и в других языках (FUSION_ENV, по умолчанию dev). Типы живут в пространстве имён FusionFramework (NuGet-пакет Fusion-Framework).
Общие правила discovery, плейсхолдеры, потребляемые ключи и полные схемы CLI:
SettingsStore.Current.EnsureLoaded(Directory.GetCurrentDirectory());
var host = SettingsStore.Current.Host;
var port = SettingsStore.Current.Port;
var secret = SettingsStore.Current.Get("secret_key");Старт
SettingsStore.Current.EnsureLoaded(Directory.GetCurrentDirectory());
using var app = new FusionApp(SettingsStore.GetSettings());
app.Listen(); // host/port from settingsВ скаффолденных приложениях также есть статический хелпер CoreSettings, который читает из SettingsStore — он не заменяет JSON.
API
| API | Роль |
|---|---|
EnsureLoaded(extraRoots…) | Найти JSON |
LoadJson(path, env, roots…) | Явная загрузка |
Get(key, default?) | JSON-узел / значение |
Merge(object) | Overlay |
Host / Port / Debug / Env | Частые поля |
SettingsStore.Configure(values) | Merge в singleton |
Смена окружения
FUSION_ENV=prod dotnet run
fusion command run:prodcommands в JSON предназначены только для Fusion Tool.