You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 8 Blazor Interactive Server项目Hot Reload卡顿失效求助

Blazor Interactive Server .NET 8 Hot Reload 卡顿/失效问题(macOS + Rider环境)

环境与问题说明

  • 基础配置:.NET 8.0 Blazor Interactive Server应用,Mac Pro (Intel 2019),macOS Sonoma,Rider 2024.2(所有软件已更新)
  • 运行方式:两种配置——.NET启动设置(HTTP/HTTPS,含调试)、dotnet watch run
  • 异常现象:
    • .NET启动设置下:编辑代码后必须手动点击「应用更改」才能生效,无自动热重载
    • dotnet watch run下:前5次左右编辑可即时生效,之后响应逐渐变慢(需数秒加载,最多3次),后续编辑完全失效,必须重启应用才能恢复

可行解决方案

1. 禁用Razor编辑助手功能

在Rider设置中操作:

  • 打开Settings > Languages & Frameworks > ASP.NET Core > Razor
  • 取消勾选Enable Razor editor helpers
  • 重启Rider后重试热重载

2. 优化dotnet watch的文件监视范围

在项目.csproj文件中添加配置,排除不必要的目录,降低文件检测压力:

<ItemGroup>
  <Watch Include="**\*.cs" />
  <Watch Include="**\*.razor" />
  <Watch Exclude="**\bin\**" />
  <Watch Exclude="**\obj\**" />
  <Watch Exclude="**\node_modules\**" />
</ItemGroup>

3. 清除浏览器缓存与SignalR连接数据

打开浏览器开发者工具(F12):

  • 切换到Application标签页
  • 删除Local Storage和Session Storage中与当前应用相关的所有条目
  • 刷新页面后重新测试热重载

4. 关闭Rider自动编译功能

部分用户反馈该功能与Hot Reload存在冲突:

  • 打开Settings > Build, Execution, Deployment > Compiler
  • 取消勾选Build project automatically
  • 重启Rider

5. 直接使用.NET CLI启动并指定热重载参数

绕过Rider内置配置,在终端执行:

dotnet watch --no-hot-reload false run

或指定项目文件:

dotnet watch --project YourBlazorProject.csproj run

6. 排查项目结构问题

如果项目存在以下情况,会导致热重载处理过载:

  • 单个Razor文件代码量过大
  • 组件嵌套层级过深
  • 存在循环依赖
    建议拆分大型组件、修复循环依赖后重试

内容的提问来源于stack exchange,提问作者Matthew Layton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 01:54:56