Чтение онлайн

на главную

Жанры

Язык программирования C#9 и платформа .NET5
Шрифт:

Меню Run в Visual Studio позволяет выбрать либо IIS Express, либо Kestrel, как показано на рис. 29.3. После выбора профиля проект можно запустить, нажав <F5> (режим отладки), нажав <Ctrl+F5> (эквивалентно выбору пункта Start Without Debugging (Запустить без отладки) в меню Debug (Отладка)) или щелкнув на кнопке запуска с зеленой стрелкой (эквивалентно выбору пункта Start Debugging (Запустить с отладкой) в меню Debug).

На

заметку!
В случае запуска приложения из Visual Studio средства редактирования и продолжения больше не поддерживаются.

Использование командной строки или окна терминала Visual Studio Code

Чтобы запустить приложение из командной строки или окна терминала VS Code, перейдите в каталог, где находится файл

.csproj
для вашего приложения. Введите следующую команду для запуска приложения под управлением веб-сервера Kestrel:

dotnet run

Для завершения процесса нажмите <Ctrl+C>.

Изменение кода во время отладки

При запуске из командной строки код можно изменять, но изменения никак не будут отражаться в выполняющемся приложении. Чтобы изменения отражались в выполняющемся приложении, введите такую команду:

dotnet watch run

Обновленная команда вместе с вашим приложением запускает средство наблюдения за файлами. Когда в файлах любого проекта (или проекта, на который имеется ссылка) обнаруживаются изменения, приложение автоматически останавливается и затем снова запускается. Нововведением в версии ASP.NET Core 5 является перезагрузка любых подключенных окон браузера. Хотя в итоге средства редактирования и продолжения в точности не воспроизводятся, это немалое удобство при разработке.

Использование Visual Studio Code

Чтобы запустить проекты в VS Code, откройте каталог, где находится решение. После нажатия <F5> (или щелчка на кнопке запуска) среда VS Code предложит выбрать проект для запуска (

AutoLot.Api
или
AutoLot.Mvc
), создаст конфигурацию запуска и поместит ее в файл по имени
launch.json
. Кроме того, среда VS Code использует файл
launchsettings.json
для чтения конфигурации портов.

Изменение кода во время отладки

В случае запуска приложения из VS Code код можно изменять, но изменения никак не будут отражаться в выполняющемся приложении. Чтобы изменения отражались в выполняющемся приложении, введите в окне терминала команду

dotnet watch run
.

Отладка приложений ASP.NET Core

При запуске приложения из Visual Studio или VS Code отладка работает вполне ожидаемым образом. Но при запуске из командной строки вам необходимо присоединиться к выполняющемуся процессу, прежде чем вы сможете отлаживать свое приложение. В Visual Studio и VS Code это делается легко.

Присоединение

с помощью Visual Studio

После запуска приложения (посредством команды

dotnet run
или
dotnet watch run
) выберите пункт меню Debug?Attach to Process (Отладкам?Присоединиться к процессу) в Visual Studio. В открывшемся диалоговом окне Attach to Process (Присоединение к процессу) отыщите процесс по имени вашего приложения (рис. 29.4).

После присоединения к выполняющемуся процессу вы можете устанавливать в Visual Studio точки останова, и отладка будет работать так, как ожидалось. Редактировать и продолжать выполнение не удастся; чтобы изменения отразились в функционирующем приложении, придется отсоединиться от процесса.

Присоединение с помощью Visual Studio Code

После запуска приложения (командой

dotnet run
или
dotnet watch run
) щелкните на кнопке запуска с зеленой стрелкой и выберите .NET Core Attach (Присоединение .NET Core) вместо .NET Core Launch (web) (Запуск .NET Core (веб)), как показано на рис. 29.5.

Когда вы щелкнете на кнопке запуска, вам будет предложено выбрать процесс для присоединения к нему. Выберите свое приложение. Затем можете устанавливать точки останова обычным образом.

Преимущество использования среды VS Code заключается в том, что после ее присоединения (и применения команды

dotnet watch run
) вы можете обновлять свой код во время выполнения (без необходимости в отсоединении) и вносимые изменения будут отражаться в функционирующем приложении.

Обновление портов AutoLot.Api

Вы могли заметить, что приложения

AutoLot.Api
и
AutoLot.Mvc
имеют разные порты, указанные для их профилей IIS Express, но для обоих приложений порты Kestrel установлены в 5000 (HTTP) и 5001 (HTTPS), что вызовет проблемы, когда вы попытаетесь запустить приложения вместе. Измените порты для
AutoLot.Api
на 5020 (HTTP) и 5021 (HTTPS), например:

"AutoLot.Api": {

"commandName": "Project",

"launchBrowser": true,

"launchUrl": "api/values",

"applicationUrl": "https://localhost:5021;http://localhost:5020",

"environmentVariables": {

"ASPNETCORE_ENVIRONMENT": "Development"

}

}

Создание и конфигурирование экземпляра WebHost

Поделиться:
Популярные книги

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания

Сильнейший ученик. Том 2

Ткачев Андрей Юрьевич
2. Пробуждение крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сильнейший ученик. Том 2

Нищенка в элитной академии

Зимина Юлия
4. Академия юных сердец
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Нищенка в элитной академии

Назад в СССР 5

Дамиров Рафаэль
5. Курсант
Фантастика:
попаданцы
альтернативная история
6.64
рейтинг книги
Назад в СССР 5

Столичный доктор. Том III

Вязовский Алексей
3. Столичный доктор
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Столичный доктор. Том III

Секретарша генерального

Зайцева Мария
Любовные романы:
современные любовные романы
эро литература
короткие любовные романы
8.46
рейтинг книги
Секретарша генерального

Мастер Разума III

Кронос Александр
3. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.25
рейтинг книги
Мастер Разума III

Идеальный мир для Социопата 3

Сапфир Олег
3. Социопат
Фантастика:
боевая фантастика
6.17
рейтинг книги
Идеальный мир для Социопата 3

Ученик

Первухин Андрей Евгеньевич
1. Ученик
Фантастика:
фэнтези
6.20
рейтинг книги
Ученик

Попытка возврата. Тетралогия

Конюшевский Владислав Николаевич
Попытка возврата
Фантастика:
альтернативная история
9.26
рейтинг книги
Попытка возврата. Тетралогия

Ищу жену для своего мужа

Кат Зозо
Любовные романы:
любовно-фантастические романы
6.17
рейтинг книги
Ищу жену для своего мужа

Сила рода. Том 3

Вяч Павел
2. Претендент
Фантастика:
фэнтези
боевая фантастика
6.17
рейтинг книги
Сила рода. Том 3

Крестоносец

Ланцов Михаил Алексеевич
7. Помещик
Фантастика:
героическая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Крестоносец

На границе империй. Том 10. Часть 4

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 4