Содержание
С помощью файла launchSettings.json мы можем настраивать профили запуска нашего приложения. Этот файл используется только на локальном компьютере в целях разработки и не копируется при разворачивании приложения
Файл launchSettings.json
Файл launchSettings.json удобно использовать в том случае, если мы хотим протестировать наше приложение в различных условиях – например, при использовании различных web-серверов, с различными стартовыми URL, переменными среды и так далее.
Ниже представлено содержимое этого файла для нашего первого приложения.
{
"$schema": "https://json.schemastore.org/launchsettings.json",
"profiles": {
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": false,
"applicationUrl": "http://localhost:5156",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": false,
"applicationUrl": "https://localhost:7049;http://localhost:5156",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
В разделе «profiles» содержатся доступные профили запуска приложения. Таким образом, наш файл содержит два профиля запуска — http и https. Эти же профили запуска мы можем выбрать в Visual Studio:

Рассмотрим основные настройки, используемые для каждого профиля. В качестве примера, возьмем профиль https
Настройки профиля запуска приложения
Вот как выглядят настройки профиля с именем https в нашем приложении:
"https": {
"commandName": "Project",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"dotnetRunMessages": true,
"applicationUrl": "https://localhost:7049;http://localhost:5156"
},
Свойство commandName – значение этого свойства определяет запускаемый web-сервер и может принимать следующие значения:
- Project: запускает Kestrel
- IISExpress: запускает IIS Express.
- IIS: запускает IIS.
Свойство dotnetRunMessages – включает или отключает отображение определенных сообщений при построении и запуске приложения с помощью команды dotnet run. Установка значения false подавляет определенные сообщения во время выполнения, которые обычно отображаются при запуске приложения.
Свойство applicationUrl – корневой URL приложения. Если при первоначальной настройке приложения был выбран флажок «Настроить для HTTPS», то в этом параметре будет содержаться два URL: для HTTPS (в нашем случае – это https://localhost:7049) и для HTTP (в нашем случае – это http://localhost:5156), а при попытке открыть URL, используя HTTP-протокол будет происходить автоматическое перенаправление на HTTPS.
Свойство environmentVariables – этот параметр используется для установки переменных среды, которые необходимы на этапе разработки. По умолчанию он включает в себя один ключ – ASPNETCORE_ENVIRONMENT, с помощью которого мы можем указать имя среды выполнения. По умолчанию, в ASP.NET Core используются следующие название сред выполнения: Development, Staging и Production. При необходимости мы можем задать любое название среды выполнения.
Также, файл launchSettings.json может содержать и другие настройки, которые могут различаться в зависимости от типа проекта. Так, для нас одними из важных настроек, которые сейчас отсутствуют в профиле являются следующие:
Свойство launchBrowser – логическое значение, определяющее, запускается ли браузер при запуске приложения. Запускаемый по умолчанию браузер можно выбрать в Visual Studio:

Свойство launchUrl – определяет путь, по которому будет переходить приложение при запуске браузера.
Теперь, разобравшись с настройками файла, попробуем настроить наше приложение, исходя из своих требований. Например, добавим в раздел «profiles» новый профиль запуска.
Добавление нового профиля запуска
Создадим новый профиль запуска с именем «Default» в котором будем запускать при запуске приложения браузер. Добавим в файл launchSettings.json следующий код:
"Default": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "weatherforecast",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Default Profile"
},
"dotnetRunMessages": false,
"applicationUrl": "https://localhost:7001;http://localhost:5001"
}
Теперь в Visual Studio выберем новый профиль:
и запустим приложение. В итоге запустится браузер, в котором мы увидим результат выполнения запроса:
А в консоли будет отражено новое имя среды выполнения:
Аналогичные настройки профиля мы могли бы произвести, используя возможности Visual Studio. Для этого необходимо перейти в свойства отладки проекта:
и в открывшемся окне отредактировать существующий или добавить новый профиль:

Итого
В этой части мы разобрали основные свойства файла launchSettings.json, а также научились настраивать профили запуска нашего приложения. Файл launchSettings.json не разворачивается вместе с приложением и используется только для целей разработки



