Логотип Fusion Framework от Cipher UnitFusion

Config

fusion.<env>.json и SettingsStore в C# (FusionFramework)

Обзор

Настройки загружаются через FFI из тех же файлов fusion.<env>.json, что и в других языках (FUSION_ENV, по умолчанию dev). Типы живут в пространстве имён FusionFramework (NuGet-пакет Fusion-Framework).

Общие правила discovery, плейсхолдеры, потребляемые ключи и полные схемы CLI:

→ Settings и конфигурация

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:prod

commands в JSON предназначены только для Fusion Tool.

На этой странице