ASP.NET Core知多少7:对重复编译说NO -- dotnet watch

我们一般的开发过程,就是编码-->编译-->运行-->调试-->定位问题--->修改代码-->编译-->...,循环往复,不辞辛劳,但其实内心是非常抗拒的。今天就介绍下.NET Core平台下的工具--dotnet watch。用于实时监视项目文件变动,若有文件变动,自动重新编译并运行项目,大大节省了我们重复编译运行调试的时间。

  1. 安装NuGet包
  2. 控制台执行dotnet watch run即可。

然而如果你使用VS Code操作,你会遇到以下错误:

  1. error NU1605: Detected package downgrade: Microsoft.NETCore.App from 2.0.6 to 2.0.0. Reference the package directly from the project to select a different version.
  2. 未找到与命令“dotnet-watch”匹配的可执行文件

针对第一个问题,是因为我们默认安装的NuGet包是最新版本的,而目前最新版本为2.0.1,它依赖于:

所以我们需要检查Microsoft.NETCore.App的版本,我的是2.0.0不符合(>=2.0.6)的条件,这里我选择安装 2.0.0版本的Watch即可,命令行执行:dotnet add package Microsoft.DotNet.Watcher.Tools --version 2.0.0。当然也可以升级安装2.0.6版本以上的Microsoft.NETCore.App,来解决这个问题。

针对第二个问题,则需要我们手动修改项目csproj文件。添加一个DotNetCliToolReference节点即可。

相关文章

本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从...
基于 .NET 的一个全新的、好用的 PHP SDK + Runtime: Pe...
.NET 异步工作原理介绍。
引子 .NET 6 开始初步引入 PGO。PGO 即 Profile Guided Opti...
前言 2021/4/8 .NET 6 Preview 3 发布,这个版本的改进大多来...
前言 开头防杠:.NET 的基础库、语言、运行时团队从来都是相...