UseKestre Limits.KeepAliveTimeout from appsettings - PullRequest
0 голосов
/ 20 февраля 2019

Можно ли прочитать конфигурационный файл для простоя до WebHost.CreateDefaultBuilder...?

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
   WebHost.CreateDefaultBuilder(args)
          .UseStartup<Startup>()
          .UseKestrel(k => k.Limits.KeepAliveTimeout = TimeSpan.FromMinutes(config.IdleTime));

Когда я пытаюсь его прочитать, всегда выдается ошибка, что конфиг нулевой.

Значение по умолчанию для UseKestrel keepAliveTimeout равно 2, и для пробуждения всегда требуется слишком много времени.

Есть идеи, как прочитать значение Idle из конфигурации?

1 Ответ

0 голосов
/ 21 февраля 2019

Я использую метод ниже

 public static void Main(string[] args)
    {
        IConfigurationRoot config = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json", optional: true)
            .AddCommandLine(args)
            .Build();

        // This config is passed to CreateWebHostBuilder
        CreateWebHostBuilder(args, config).Build().Run();
    }

    public static IWebHostBuilder CreateWebHostBuilder(string[] args, IConfigurationRoot config) =>
    //You can access config values now inside this method
...