ASP.NET започва основният проект, стандартният ред на изпълнение е: Хост хост -> Конфигурация на четене -> Настройки на лога -> Регистрационна услуга (DI) -> Добавяне на междинен софтуер -> Слушане на WebHost -> стартиране на фонова работа.
Зареждането на конфигурацията и четенето са в самото начало на процеса на стартиране. Профилът на Microsoft в ASP.NET Core:Входът към хиперлинк е видим.
Преглед:
Методът Host.CreateDefaultBuilder, предостави стандартната конфигурация за приложението в следния ред:
- ChainedConfigurationProvider: Добавете съществуващ като източник. В примера с конфигурацията по подразбиране добавете хост конфигурацията и я задайте като първи източник за конфигурацията на приложението.
- Използвайте appsettings.json appsettings.json.
- Използвайте JSON конфигурационния доставчик чрез настройките на приложенията: JSON предостави. Например, настройките на приложенията. Production.json и настройките на приложенията. Development.json。
- Тайните на приложението, когато приложението работи в средата.
- Използвайте доставчици на конфигурация на променливи на средата, за да предоставите чрез променливи на средата.
- Използването на доставчика на конфигурация на командния ред се предоставя чрез параметрите на командния ред.
Изходният код е следният:
Адрес на изходния код:Входът към хиперлинк е видим.
Както се вижда от кода, приоритетът на конфигурацията при получаване на програмата е:appsettings.json -> appsettings.environment.json -> променливи на околната среда -> аргументи в командния ред。 Тестваме според приоритета.
Създайте нов конзолен метод за връщане на цялата конфигурационна информация, кодът е следният:
Първо, appsettings.json конфигурационния файл, както следва:
Нови настройки на приложенията. Test.json конфигурация, както следва:
Опитайте да започнете проекта и вижте конфигурацията на WebConfig:Name и WebConfig:Date, както е показано на следното изображение:
{"Key":"WebConfig:Name","Value":"itsvse.com"},{"Key":"WebConfig:Date","Value":"2021"}
Локализиране на свойства ->launchSettings.jsonда модифицира конфигурацията на ASPNETCORE_ENVIRONMENT средата на Тест, както следва:
По това време процедуратаЩе прочета настройките на приложението. Test.json конфигурация, опитай да рестартираш проекта, намериWebConfig:Name 已经覆盖了, както е показано на фигурата по-долу:
{"Key":"WebConfig:Name","Value":"itsvse.com test"},{"Key":"WebConfig:Date","Value":"2021"}
Модифицирайте отново launchSettings.json файла и зададете стойността на WebConfig:Name чрез променливата на средата, кодът е следният:
Забележка: Променете стойността на WebConfig:Name за променливата на средата, името на променливата е: WebConfig__Name (Средата е разделена с двойно подчертаване)
Опитайте да рестартирате проекта и намерете стойността на WebConfig:Name,Той е презаписан от стойността, зададена от променливата на околната среда, както е показано на фигурата по-долу:
Опитайте да промените стойността по подразбиране през командния ред и стартирайте командата по следния начин:
Както е показано по-долу:
Тествай приоритета на конфигурационните ключове с практика и това е.
|