Сколько времени appsettings. json файл будет прочитан ASP. NET Core при его работе? - PullRequest
1 голос
/ 24 февраля 2020

После прочтения этого приятного поста о чтении настроек приложения и конфигурации из appsettings. json файла, я немного запутался, сколько раз будет прочитан appsettings. json будет прочитано?

Это класс Startup, и когда приложение было запущено для работы, прочитайте его в первый раз (думаю, если я ошибаюсь, исправьте меня).

public class Startup
{  
    public IConfiguration Configuration { get; }

    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }
 ...

на контроллере:

public class HomeController : Controller
{
   private readonly IConfiguration _config;
   public HomeController(IConfiguration config)
    {
        _config = config;
    }
  ...

Вопрос в том, что appsettings. json будет прочитан один раз в классе Start или каждый раз, когда мы используем HomeController, он будет прочитан?

Поскольку это файл и я я спрашиваю о показаниях чтения из физического файла на жестком диске.

1 Ответ

1 голос
/ 24 февраля 2020

Это зависит. Файл JSON будет прочитан один раз при запуске при заполнении IConfiguration.

Однако, если в конфигурации настроено обновление sh при изменении, он будет перечитан, если изменения будут внесены в файл во время время выполнения.

Каждый раз, когда IConfiguration вводится, файл JSON не перечитывается.

Ссылка Конфигурация в ASP. NET Ядро

Это сказал. В идеале не следует вводить IConfiguration повсеместно. Иногда это воспринимается как запах кода. Шаблон параметров обычно является рекомендованным подходом

Ссылка Шаблон параметров в ASP. NET Ядро

Это конкретное c расположение в документах должно быть Интерес как есть фокусируется на том, сколько раз AddJsonFile вызывается автоматически фреймворком при настройке конфигурации

JSON Поставщик конфигурации

...