- PVSM.RU - https://www.pvsm.ru -
В этом руководстве мы воспользуемся существующим приложением WebApi (оно вычисляет сумму и произведение двух чисел), чтобы продемонстрировать варианты использования dotnet watch. Образец приложения специально содержит ошибку, которую мы исправим во время изучения.

1. Создание серверных служб для мобильных приложений [1].
2. Разработка приложений ASP.NET Core с помощью dotnet watch [2].
3. Создание справочных страниц веб-API ASP.NET с помощью Swagger.
4. Открытый веб-интерфейс для .NET (OWIN).
5. Выбор правильной среды разработки .NET на сервере.
dotnet watch — это инструмент для разработчиков, который выполняет команду dotnet при изменении исходных файлов. С его помощью можно компилировать, тестировать или публиковать изменения в коде.
Сначала скачайте [3] образец приложения. Оно содержит два проекта, WebApp (веб-приложение) и WebAppTests (модульные тесты для веб-приложения).
В консоли перейдите в папку
WebAppи выполните команды:
dotnet restoredotnet run
Консоль отобразит сообщения (пример ниже), которые укажут на то, что приложение работает и ожидает запросы.
$ dotnet run
Hosting environment: Production
Content root path: C:/Docs/aspnetcore/tutorials/dotnet-watch/sample/WebApp
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
В браузере перейдите по адресу http://localhost:5000/api/math/sum?a=4&b=5, вы увидите результат 9.
Если вы перейдете по адресу http://localhost:5000/api/math/product?a=4&b=5, то получите результат 20. Но вместо этого вы снова видите 9. Мы это исправим ниже.
dotnet watch в проект1. Добавьте
Microsoft.DotNet.Watcher.Toolsв файл .csproj:<ItemGroup> <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0" /> </ItemGroup>2. Выполните команду
dotnet restore.
dotnet с помощью dotnet watch
Любую команду dotnet можно выполнить с помощью dotnet watch, например:
| Команда | Команда с watch |
|---|---|
| dotnet run | dotnet watch run |
| dotnet run -f net451 | dotnet watch run -f net451 |
| dotnet run -f net451 — --arg1 | dotnet watch run -f net451 — --arg1 |
| dotnet test | dotnet watch test |
Чтобы выполнить WebApp с помощью watcher, выполните команду dotnet watch run в папке WebApp. Консоль отобразит сообщения, что watch работает.
dotnet watchУбедитесь, что dotnet watch работает.
Давайте исправим ошибку в методе Product в MathController, чтобы он возвращал произведение, а не сумму:
public static int Product(int a, int b)
{
return a * b;
}
Сохраните файл. В консоли отобразятся сообщения, которые укажут на то, что dotnet watch обнаружил изменение в файле и перезапустил приложение.
Убедитесь, что http://localhost:5000/api/math/product?a=4&b=5 выдает правильный результат.
dotnet watch
- Измените метод
ProductвMathControllerк возврату суммы и сохраните файл.- В командной строке перейдите в
WebAppTests.- Выполните
dotnet restore.- Выполните
dotnet watch test. Вы увидите сообщение о том, что тест не прошёл и watcher ожидает изменение в файле:Total tests: 2. Passed: 1. Failed: 1. Skipped: 0.</li> <li>Test Run Failed.- Исправьте метод
Productтак, чтобы он возвращал произведение.
dotnet watch обнаружит изменение в файле и перезапустит тесты. В консоли отобразится сообщение, что тест пройден успешно.
dotnet-watch на GitHub
dotnet-watch — это часть репозитория DotNetTools [4]. Всё, что вы не нашли в этом руководстве, можно посмотреть именно там.
Автор: Microsoft
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/c-2/250102
Ссылки в тексте:
[1] Создание серверных служб для мобильных приложений: https://habrahabr.ru/company/microsoft/blog/319482/
[2] Разработка приложений ASP.NET Core с помощью dotnet watch: https://habrahabr.ru/company/microsoft/blog/324312/
[3] скачайте: https://aka.ms/habr_324312_1
[4] DotNetTools: https://aka.ms/habr_324312_2
[5] Источник: https://habrahabr.ru/post/324312/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.