如何启用 Blazor 热重载

Cra*_*aig 7 blazor-server-side

观看 Dan Roth 的 Blazor 演示(2020 年 1 月 15 日)后,对 razor 文件的代码更改已刷新到浏览器,而无需停止|构建|运行周期。在我的 VS2019(最新)上,我没有得到热重载。这是来自标准模板的新 Blazor SS 项目。是否需要设置某个属性才能启用它?

我尝试了 dotnet run watch 但没有区别

Flo*_*res 2

编辑:2021 年 12 月 4 日

初始 .NET 热重载支持 现在,使用 dotnet watch 对 .NET 热重载的早期支持可用于 ASP.NET Core 和 Blazor 项目。.NET 热重载将代码更改应用到正在运行的应用程序,无需重新启动它,也不会丢失应用程序状态。

要尝试使用基于 .NET 6 的现有 ASP.NET Core 项目进行热重载,请将 "hotReloadProfile": "aspnetcore" 属性添加到 launchSettings.json 中的启动配置文件中。对于 Blazor WebAssembly 项目,请使用“blazorwasm”热重加载配置文件。

使用 dotnet watch 运行项目。输出应表明热重载已启用:

watch :启用热重载。有关支持的编辑的列表,请参阅https://aka.ms/dotnet/hot-reload。按“Ctrl + R”重新启动。如果您在任何时候想要强制应用程序重建并重新启动,您可以通过在控制台输入 Ctrl+R 来执行此操作。

您现在可以开始编辑代码。当您保存代码更改时,适用的更改几乎会立即自动热重新加载到正在运行的应用程序中。正在运行的应用程序中的任何应用程序状态都会被保留。

旧答案

这有望出现在 .NET 6 中。但在撰写本文时,这仍然不起作用:

在此输入图像描述

  • 该版本现已在 [.NET 6.0 Preview 3](https://devblogs.microsoft.com/aspnet/asp-net-core-updates-in-net-6-preview-3/) 中发布 (2认同)