前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【译】使用 dotnet watch 开发 ASP.NET Core 应用

【译】使用 dotnet watch 开发 ASP.NET Core 应用

作者头像
陈仁松
发布2018-03-20 16:37:07
1.4K0
发布2018-03-20 16:37:07
举报
文章被收录于专栏:陈仁松博客陈仁松博客

介绍

dotnet watch 是一个开发阶段在源文件发生变动的情况下使用 dotnet 命令的工具。 当代码发生变动的时候可以用来执行编译,运行测试,或者发布操作。

在本教程中,我们将使用一个现有的计算两个数字之和以及乘积的 WebApi 应用程序来演示如何使用 dotnet watch 。示例应用程序故意包含一个错误,作为本教程的一部分我们会修复它。

开始入门

开始下载 示例程序。示例程序包含两个项目, WebApp (Web 应用程序)以及 WebAppTests (Web 应用程序配套的单元测试项目)

在命令行控制台中,进入下载示例程序的目录并且运行下述命令:

1、dotnet restore 2、cd WebApp 3、dotnet run

控制台输出将显示如下信息,表明该应用程序正在运行并等待请求:

$ dotnet run
Hosting environment: Development
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.

在 Web 浏览器中,导航到 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、按照下面例子的方式在 WebApp/project.json 文件的 tools 配置节中添加 Microsoft.DotNet.Watcher.Tools 引用:

<ItemGroup>
    <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="2.0.0" />
</ItemGroup> 

2、运行 dotnet restore

控制台输出将显示如下信息:

复制代码

log  : Restoring packages for /Users/user/dev/aspnet/Docs/aspnet/tutorials/dotnet-watch/sample/WebApp/project.json...
log  : Restoring packages for tool 'Microsoft.DotNet.Watcher.Tools' in /Users/user/dev/aspnet/Docs/aspnet/tutorials/dotnet-watch/sample/WebApp/project.json...
log  : Installing Microsoft.DotNet.Watcher.Core 1.0.0-preview2-final.
log  : Installing Microsoft.DotNet.Watcher.Tools 1.0.0-preview2-final.

使用 dotnet watch 运行 dotnet 命令

任何与 dotnet 有关的命令都可以以 dotnet watch 这样的方式运行:例如:

命令

带上 watch 的命令Command

dotnet run

dotnet watch run

dotnet run -f netcoreapp2.0

dotnet watch run -f netcoreapp2.0

dotnet run -f netcoreapp2.0-- --arg1

dotnet watch run -f netcoreapp2.0-- --arg1

dotnet test

dotnet watch test

为了让 WebApp 在 watcher 模式下运行,在 WebApp 目录里面运行 dotnet watch run 命令。 控制台便会监控代码文件变化。

在 dotnet watch 模式进行修改

确保 dotnet watch 在运行中。

让我们来修复上面发现的那个两个数相乘结果错误。

打开文件 WebApp/Controllers/MathController.cs。我们故意在代码中引入了错误。

public static int Product(int a, int b)
{
    // We have an intentional bug here
    // + should be *
    return a + b;//手工高亮
}

通过把代码 a + b 替换为 a * b 修复错误。

保存文件,验证 http://localhost:5000/api/math/product?a=4&b=5 链接返回正确的结果。

使用 dotnet watch 运行测试

1、打开文件 WebApp/Controllers/MathController.cs。撤销原先的修改并保存文件。

2、导航到WebAppTests目录

3、运行dotnet restore命令

4、运行dotnet watch test, 控制台输出将显示如下信息:

Total tests: 2. Passed: 1. Failed: 1. Skipped: 0.
Test Run Failed.

修改代码,并保存文件。

dotnet watch 将会检测到文件变更并且重新运行测试。

查看英文原文Developing ASP.NET Core apps using dotnet watch

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
  • 开始入门
  • 项目中添加 dotnet watch
  • 使用 dotnet watch 运行 dotnet 命令
  • 在 dotnet watch 模式进行修改
  • 使用 dotnet watch 运行测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档