Какие строковые значения ожидают от метода CreateDefaultBuilder? - PullRequest
0 голосов
/ 06 мая 2018

ASP.NET Core MVC 2.1

В документации здесь вижу CreateDefaultBuilder(string[] args) метод. Но я не вижу примеров его использования. Какие аргументы ожидаются методом в этом случае? Я могу передать такие аргументы: "Hello", "World", но вряд ли это будет то, что ожидалось методом ...

1 Ответ

0 голосов
/ 06 мая 2018

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

Типичная программа вызывает CreateDefaultBuilder, чтобы начать настройку хоста.

Любая загруженная конфигурация может быть переопределена аргументами командной строки.

Например, следующее было взято непосредственно из документации с некоторыми или моими собственными формулировками

Предполагая, что hosting.json файл, подобный этому

{
    urls: "http://*:5005"
}

Переопределение конфигурации, предоставляемой UseUrls, с помощью hosting.json config в первую очередь, аргумент командной строки config вторую:

public class Program
{
    public static void Main(string[] args)
    {
        BuildWebHost(args).Run();
    }

    public static IWebHost BuildWebHost(string[] args)
    {
        var config = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("hosting.json", optional: true)
            .AddCommandLine(args) //<--
            .Build();

        return WebHost.CreateDefaultBuilder(args)
            .UseUrls("http://*:5000") //<--
            .UseConfiguration(config) //<--
            .Configure(app =>
            {
                app.Run(context => 
                    context.Response.WriteAsync("Hello, World!"));
            })
            .Build();
    }
}

Чтобы указать хост, работающий с определенным URL, желаемое значение может быть передано из командной строки при выполнении dotnet run. Аргумент командной строки переопределяет значение urls из файла hosting.json, и сервер прослушивает порт 8080:

dotnet run --urls "http://*:8080"

Справочник Хостинг в ASP.NET Core

Следующая статья также должна помочь

ASP.NET Core - передача аргументов командной строки в класс запуска

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...