.NET 热重载会将代码更改(包括对样式表的更改)应用到正在运行的应用,而无需重启应用,也不会丢失应用状态。 所有 ASP.NET Core 6.0 和更高版本的项目都支持热重载。
通常,将重新运行更新的代码,以在下列情况下生效:
OnInitialized
若要详细了解受支持的方案,请参阅 支持的代码更改(C# 和 Visual Basic) 。
Blazor WebAssembly 热重载支持以下代码更改:
this
请注意,在删除之前设置组件参数值的属性时,将释放并重新初始化该组件,以将删除的参数设置回其默认值。
Blazor WebAssembly 应用不支持以下代码更改:
await
yield
static
使用 dotnet watch 代码激活热重载:
dotnet watch
dotnet watch 若要强制应用重新生成和重启,请使用命令行界面中的键盘组合 CtrlR。 进行不受支持的代码编辑时(称为强制编辑), 会询问你是否要重启应用: 是:重启应用。 否:不重启应用,并将应用保持在运行状态而不应用更改。 始终:在发生强制编辑时按需重启应用。 从不:不重启应用,也避免未来出现提示。 若要禁用热重载支持,请将 --no-hot-reload 选项传递给 dotnet watch 命令: dotnet watch --no-hot-reload 禁用热重载 Properties/launchSettings.json 中的以下设置禁用热重载: "hotReloadEnabled" : false 有关详细信息,请参阅 Visual Studio 文档中的以下资源: YouTube 视频 Visual Studio 2022、VS Code 和记事本中的 .NET 6 热重载?!? 在运行时编辑代码的 .NET 热重载体验简介 在 Visual Studio 中使用热重载编写和调试正在运行的代码 和 Razor 编辑器的更新 + ASP.NET 的热重载 使用热重载的测试执行
若要强制应用重新生成和重启,请使用命令行界面中的键盘组合 CtrlR。
进行不受支持的代码编辑时(称为强制编辑), 会询问你是否要重启应用:
若要禁用热重载支持,请将 --no-hot-reload 选项传递给 dotnet watch 命令:
--no-hot-reload
dotnet watch --no-hot-reload 禁用热重载 Properties/launchSettings.json 中的以下设置禁用热重载: "hotReloadEnabled" : false 有关详细信息,请参阅 Visual Studio 文档中的以下资源: YouTube 视频 Visual Studio 2022、VS Code 和记事本中的 .NET 6 热重载?!? 在运行时编辑代码的 .NET 热重载体验简介 在 Visual Studio 中使用热重载编写和调试正在运行的代码 和 Razor 编辑器的更新 + ASP.NET 的热重载 使用热重载的测试执行
Properties/launchSettings.json 中的以下设置禁用热重载:
Properties/launchSettings.json
"hotReloadEnabled" : false 有关详细信息,请参阅 Visual Studio 文档中的以下资源: YouTube 视频 Visual Studio 2022、VS Code 和记事本中的 .NET 6 热重载?!? 在运行时编辑代码的 .NET 热重载体验简介 在 Visual Studio 中使用热重载编写和调试正在运行的代码 和 Razor 编辑器的更新 + ASP.NET 的热重载 使用热重载的测试执行
有关详细信息,请参阅 Visual Studio 文档中的以下资源: