微软回应删除.NET热重载功能:通过CLI支持Hot Reload热重载
微软近日激怒了开源.NET社区,起因是它删除了开源.NET的一项旗舰功能,以提升Visual Studio 的吸引力,尤其是针对与Visual Studio颇有渊源的跨平台源代码编辑器Visual Studio Code。 好消息是微软听取了社区的声音,恢复了通过CLI支持HotReload功能。
今天早上.NET团队负责人Scott Hunter在.NET官方博客上发布了一篇文章,具体参见 https://devblogs.microsoft.com/dotnet/net-hot-reload-support-via-cli/,文章提到了的愿景是为.NET创建一个开放和充满活力的生态系统。与许多公司一样,微软正在学习平衡 OSS 社区的需求,并成为.NET 的企业赞助商。有时候微软做对了。当微软做错了,微软能做的最好的事情就是从错误中吸取教训,更好地向前迈进。
同时也透露了一个问题,微软还没有学会,如何跟一个强大的开源社区相处,这非常像美国还没有学会,如何跟一个强大的中国相处一样。 开源路上的挫折可能更快加速微软同开源社区相处,我相信微软是真的爱开源。

最近备受争议的有两个关键部分,一是GitHub上开源.NET SDK代码存储库中的这个合并请(https://github.com/dotnet/sdk/pull/22217),即从一款名为dotnet watch的工具中删除了用于实现Hot Reload(热重载)这项功能的2500行代码,今天早上已经通过这个合并恢复了(https://github.com/dotnet/sdk/pull/22262);二是这篇博文,微软首席项目经理Dmitry Lyalin在博文中透露:“我们已决定,从即将发布的.NET 6正式版开始,我们将仅通过Visual Studio 2022启用热重载功能。”,早上Scott Hunter已经宣布恢复这项功能。

(https://devblogs.microsoft.com/dotnet/update-on-net-hot-reload-progress-and-visual-studio-2022-highlights/)
热重载是一项功能,开发人员可以利用该功能在应用程序运行时修改源代码、实施更改,并在运行中的应用程序中查看结果。该功能之所以可以加快开发过程,是由于它比重新构建代码、停止应用程序、实施更改后再次启动应用程序要快。
Lyalin当初在介绍重加载功能时表示,开发人员可以通过“Visual Studio 2019版本16.11(预览版1)中的.NET热重载体验和.NET 6(预览版4)中的dotnet watch命令行工具来使用它”。该功能出现在.NET 6 RC2中,该版本拥有上线(go-live)许可证,已于10月12日发布,赶在计划于11月9日召开的.NET Conf 2021线上大会上发布.NET 6之前发布。
删除热重载在这个后期阶段令人惊讶,令广大.NET开发人员颇为惊愕和失望,以至于提交了阻止这一变更的合并请求,并迅速获得了支持。一名开发人员说:“这是一场真正决定.NET是不是真是一个OSS[开源软件项目]的公关活动。”

为什么这对我们所有人都很重要?
为什么这么重要?虽然热重载是一项工具性质的功能,但这一变更的含义在于,开源.NET SDK被故意削弱功能,似乎只是为了使Visual Studio(这款商业产品附有功能缩减的免费版)比竞争对手更具吸引力,竞争对手包括微软赞助的Visual Studio Code。这次变更还是在未与开发社区通气的情况下进行的。前阵子出现了一场危机:微软成立和赞助的独立自由软件组织.NET基金会面临同一个问题:微软对.NET作为开源平台是否真的很上心?这场危机后,开发社区对此似乎见惯不怪。决定遏制热重载的可用性也似乎让外界颇感好奇。开发工具对于像微软这样的平台公司而言具有重要的战略意义:简而言之,它吸引广大程序员支持平台。谁能忘记微软前首席执行官Steve Ballmer及其在2000年微软25周年庆祝活动上呐喊的“开发人员、开发人员、开发人员”?我们尽可一笑了之;然而,知名软件行业分析公司Redmonk以“开发者是新的掌权者这一观点”作为谋生之道。
一款关键业务应用程序可以促进用户在Azure上大笔投入,而微软云是NET的自然目的地,正如谷歌云得益于这家广告公司作为Kubernetes的发明者这个地位一样。Visual Studio Code是免费的,但也是微软迄今在开发人员社区最成功的产品,VS Code中强有力地支持.NET对微软可能带来的好处远远超过对Visual Studio销售带来的任何轻微影响。
另一名开发人员说:“我是不是可以理解为这意味着在.NET 6预览版中已经与dotnet watch配合使用的热重载功能现在被取消了?现在我可以创建一个.NET控制台应用程序,使用dotnet watch运行它,更改文件,并在不重启应用程序的情况下自动重载文件。如果这项功能取消......无非是为了钱。”另一条评论问道:“如果你肆意遏制开发人员在Windows之外的平台上的体验,又怎能指望.NET会成为一种用于跨平台开发的有效解决方案?”
让一项关键的工具功能成为Visual Studio的独享功能存在另一个问题,那就是它剥夺了 macOS和Linux开发人员的这个选项,因为Visual Studio仅面向Windows。微软表示还计划为 Visual Studio Mac推出这项功能,但与VS Code相比,其用途小得多。从社区的炮轰来看,实际情况并不是微软想象的那样,有大量的开发人员工作流依赖于.NET CLI的功能,还好微软听取了社区的声音,及时改正错误。
参考资料:
https://www.theregister.com/2021/10/22/microsoft_net_hot_reload_visual_studio/
https://github.com/dotnet-foundation/Home/discussions/63
https://devblogs.microsoft.com/dotnet/net-hot-reload-support-via-cli/
相关文章

技嘉AORUS电竞装备助阵PCL春季赛,双配置方案护航巅峰对决
2026年PCL绝地求生冠军联赛春季赛正在如火如荼的进行,技嘉作为全球高端电竞硬件品牌之一,为赛事提供专业电竞装备支持,助力选手发挥巅峰操作2026-04-24
百度地图重磅发布Map Agent Plan:让每一只"龙虾"都能畅行物
近日,百度地图Map Agent Plan发布,OpenClaw的爆火,让无数人第一次真正触摸到了AI Agent的终极生产力2026-04-22
中端WOLED 新标杆 技嘉 GO27Q24G 全能电竞显示器性价比拉满
技嘉前不久发布的GO27Q24G电竞显示器,它采用的是WOLED方案,并且使用了MLA+微透镜阵列技术,算是把游戏光影玩明白了2026-04-21
技嘉主板DUO X技术创风冷内存超频纪录:逼近13000MT/s,液氮不再是唯一
知名超频玩家Saltycroissant创造了一项新的内存超频纪录,尽管这一成绩未能登顶榜首,但仅凭环境冷却就能达成如此表现,实在令人惊叹2026-04-21
新上架|Winstep Xtreme 专业桌面美化增强套件,限时首发特惠中!
Winstep Xtreme不仅仅是一款桌面美化软件,更是一套完整的桌面生产力系统,无论是追求个性化桌面,还是希望提高工作效率,它都能满足你的需求,现在Winstep Xtreme 已正式新2026-04-13
如果你只问一句“室内设计AI软件哪个好”,本文将给你答案,本文样本覆盖 30 个真实任务、150 次基础生成、62 次改稿复测,包含住宅改造、商业空间、旧改翻新、软装提案、2026-03-30
TreeSize 是一款强大的图形化磁盘空间检测分析管理工具,它可以帮助用户分析、管理和清理各种存储系统,适合个人和企业用户,本文为大家带来了TreeSize 官方密钥获取方式,2026-01-22
XYplorer:Windows 文件资源管理的“瑞士军刀”
XYplorer是一款强大而便捷的文件管理工具,不需要安装,也不会改变您的系统或注册表,您可以把它放在 U 盘里,随时随地使用,文件管理也能“随身携带”,它不仅能快速搜索文2025-11-24
1Password 对比 Sticky Password:谁才是密码管理的终极选择?
1Password和Sticky Password均为跨平台密码管理工具,但两者在功能定位、安全特性及适用场景上存在差异,那么1Password和Sticky Password谁更好用呢?本文就为大家带来1Pas2025-10-31
夸克PC版开启内测:主打夸克小工具和夸克网盘(附正式版下载)
夸克PC版在电脑中使用的浏览器工具,据悉该软件已经开启内侧,主打夸克小工具和夸克网盘,本站提供该软件内侧地址2023-12-20











最新评论