Содержание
С помощью файла 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 не разворачивается вместе с приложением и используется только для целей разработки