练习 - 进行代码更改
使用 .NET CLI dotnet watch
命令增强开发工作流。 与命令 dotnet run
不同,每当对源文件进行更改时,dotnet watch
都会自动重新生成并重新运行应用程序。 此外,dotnet watch
还包含热重载功能,该功能会将更新直接注入正在运行的应用程序,而无需重启。
dotnet watch
使你能够更快地查看更改的结果、提高工作效果和效率。
通过学习本练习,你将能够:
- 使用
dotnet watch
命令运行在上一练习中创建的 Web 应用。 - 在 Web 应用运行时查看代码更改结果。
使用 dotnet watch
运行 Web 应用
通过命令行中的 dotnet watch
命令运行 Web 应用:
在 Visual Studio Code 中,如果集成终端窗格尚不可用,请从“终端”菜单中选择“新建终端”以打开集成终端。
使用以下命令生成并运行应用:
dotnet watch
该项目通过命令行生成、运行并提供 ASP.NET Core 应用的终结点 URL:
Now listening on: http://localhost:5287
由于在项目创建时,提供的 URL 中的端口号是在配置中随机设置的,因此终结点可能具有不同的端口号。
打开浏览器转到以你自己的命令行输出生成的 URL,将显示应用的响应
Hello World!
。
更改应用的代码并快速查看结果
MyWebApp 应用程序仍在运行,浏览器仍显示 Hello World!
响应:
- 在 Visual Studio Code 的“资源管理器”窗格中选择“Program.cs”。
- 更改
app.MapGet
方法,使其响应"Hello .NET Developer Community!"
而不是"Hello World!"
。 - 保存对代码所做的更改。
保存更改后,dotnet watch
将自动检测对 Program.cs 文件的修改。 然后,它将:
- 热重载应用程序:在可能的情况下,
dotnet watch
会将更改应用到正在运行的应用程序,而无需完全重新生成。 - 重新生成应用程序(如有必要):如果无法热重载更改,
dotnet watch
会自动重新生成应用程序以合并所做的更改。 - 重启应用程序(如有必要):如果需要完全重新生成,
dotnet watch
会重启应用程序。
终端中的输出指示文件 Program.cs 已更改,并且更改已热重载到正在运行的应用。
若要查看更改的结果,请刷新浏览器。 将显示更新后的响应“Hello .NET Community!”。
通过此自动重新生成和重启过程,可以快速查看更改的结果,而无需手动停止和重启应用程序。