Эквивалент UseUrls для .NET Core 3.1 / IHostBuilder

Раньше, в .NET Core 2.2, я мог добавить UseUrls в свой Program.cs файл, чтобы установить URL-адрес, по которому будет запускаться веб-сервер:

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .UseStartup<Startup>()
        .UseUrls("http://localhost:5100");

Однако в .NET Core 3.1 формат по умолчанию Program.cs изменился:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); });

Я пробовал добавить к нему UseUrls так же, как и с .NET Core 2.2, но там написано:

'IHostBuilder' не содержит определения для 'UseUrls', а перегрузка лучшего метода расширения 'HostingAbstractionsWebHostBuilderExtensions.UseUrls (IWebHostBuilder, params string [])' требует получателя типа 'IWebHostBuilder'

Как я могу установить URL-адрес для запуска сервера с использованием .NET Core 3.1 (который использует IHostBuilder вместо IWebHostBuilder)?


person Merlin04    schedule 15.12.2019    source источник


Ответы (1)


Метод ConfigureWebHostDefaults позволяет настроить веб-хост. Вы можете изменить URL-адреса: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/generic-host?view=aspnetcore-3.1#urls.

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
                webBuilder.UseUrls("http://localhost:5100");
            });
person meziantou    schedule 15.12.2019