CreateDefaultBuilder устанавливает разумные значения по умолчанию, которые вы хотите сохранить, кроме части конфигурации.CreateDefaultBuilder выполняет следующие настройки конфигурации:
- appsettings.json
- appsettings. {Environment} .json
- Secret Manager (если среда разработки)
- Переменные окружения.
- Аргументы командной строки.
Знание этого уровня по умолчанию, тот факт, что каждый слой потенциально может переопределять значения в предыдущих, и тот факт, что вы можете только добавить конфигурациюпоставщиков в списке (хотя они не могут удалить их), теперь вы можете решить свою проблему.
Переопределение конфигурации поверх CreateDefaultBuilder выполняется с помощью ConfigureAppConfiguration:
WebHost.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostingContext, config) =>
{
// Override here specifying new or previous layers to make sure
// you get the desired outcome.
// e.g. If you specify your appsettings.json you basically start from scratch
...
})...