2026年初,一批使用VS Code及其兼容编辑器的开发者收到了一次重要更新推送。在ReSharper的2026.2版本中,一项被反复提及的功能请求终于不再是“计划中”——调试,这个看似基础却一直缺失的拼图,正式就位。

如果你常年跟着VS Code的.NET开发路线走,会很清楚这个时刻等了多久。JetBrains的团队没把这件事藏在新功能的角落里,而是用一整篇独立公告来宣告它。官方说得很直接:基于驱动JetBrains Rider的同款核心调试引擎,开发者现在可以直接在编辑器里设断点、实时检视变量与表达式、单步执行代码,甚至启动或附加到.NET进程,全程不用离开当前窗口。这对日常需要在多个工具间切来切去的开发者来说,省掉的不只是几次鼠标点击,而是思路被打断的连续成本。

打开网易新闻 查看精彩图片

但这次更新显然不只是给一个调试器就收工。团队在2026.1到2026.2之间,还悄悄打磨了一整套“数据流可视化”能力。这项叫Value Tracking的功能,解决了一个极高频的痛点:当你面对一个NullReferenceException或者某个状态莫名其妙被改变时,不再需要靠着肉眼在构造函数、属性和异步边界之间手动回溯赋值链。现在,你可以在编辑器中直接右键选择“显示值来源”,立刻看到这个值的源头;或者用“显示值去向”,追踪它后续的一切使用。这种在编码阶段就能完成的静态分析,让你甚至不必启动调试器,就能追查出许多运行时才会暴露的问题。

在此基础上,调用层次和类型层次的导航也被重新武装了一遍。ReSharper引擎接管了Call Hierarchy与Type Hierarchy视图,无论是追踪一个方法调用在代码库中的完整影响链,还是理清一个类的继承体系,你都可以一键切换进入/离开端、父类型/子类型,再点一下目标就能直接跳转。这种丝滑的继承与调用关系追踪,对于接手大型项目或维护遗留代码的人来说,几乎等同于在迷宫墙上画出了完整路线图。

项目结构的管理方面,这次更新跟最近C# Dev Kit扩展的改动拉开了距离。ReSharper选择了保留并继续增强解决方案资源管理器,确保项目结构始终占据视觉中心。三个具体变化值得注意:一是NuGet包版本号直接出现在树状视图里,让依赖审计和版本冲突一目了然;二是类似Properties和wwwroot这类服务文件夹被自动钉在普通文件夹上方,给高频目录视觉优先权;三是新增的“添加现有项目”上下文菜单选项,让外部代码融入现有方案的摩擦力降到最低。

如果把这些更新归拢来看,会发现一条清晰的逻辑:一切围绕“缩短从发现问题到解决问题的路径”展开。调试让你在问题眼前直接动手;值追踪让你在写代码时就想清楚数据流向;调用和类型层次让你快速理清结构;项目级的改进则减少了配置和组织的认知负荷。但是,当你沉浸在这些新能力里时,也难免会问:这是不是意味着VS Code上的.NET开发体验,终于能追平传统IDE了?

这个问题没有一刀切的答案。一方面,调试的加入的确补上了一块最显眼的短板。以前在VS Code里写.NET Core或.NET 5+时,遇到需要单步调试的场景,往往要切回Visual Studio,或者通过第三方扩展组合一套半自动方案。现在可以就地解决,配合已经日益完善的代码补全、导航和重构支持,日常的开发闭环基本封闭了。就效率而言,这是一个关键的跨越。另一方面,也要看到这次发布的调试器还处在初始阶段,官方也无意把它和所有其他功能等量齐观——他们为此专门写了另一篇长文,暗示这里面的细节和边界远比本次简介丰富。对于调试这一件事,你可以期待更多,但也得诚实面对它目前的范围。

值追踪与导航类的强化,同样值得冷静拆解。表面看,它们像是锦上添花:一个能帮你查值从哪来到哪去,一个能帮你理清调用关系,解决的是“能不能少记一些上下文”的问题。但在实际作业里,这两种能力直接关联到两个最常见的被动工时损耗:查值为空带来的线上事故定位成本,以及梳理大代码库结构时反复跳转的认知消耗。它们的价值并不像调试那样直戳眼睛,却能动辄为一次问题排查省下几十分钟的阅读。这也是为什么在官方描述中,特别提到了“无需启动调试器”这个定语——因为很多NullReferenceException的根因,完全可以在设计态就被挖出,不需要等到按下F5之后再去抓现形。

至于解决方案资源管理器的演进,它所反映的是一股更底层的思考:轻量编辑器该不该提供重型IDE般的项目管理能力?C# Dev Kit的近期策略倾向简化,而ReSharper这边选择“继续增强”。这不见得有对错之分,更像是两种产品哲学的演绎。看重保姆式组织的人会觉得包版本可视化、服务文件夹置顶这些细节贴心;而信奉极简的人则可能认为解耦才是未来。在缺少一份普适的“正确”答卷时,开发体验的好坏便退回到个体习惯和项目体量上来评判。

基于这次更新的整体表现,可以做出这样的判断:ReSharper在VS Code兼容编辑器阵地上,正试图构建一个渐进的、不妥协的.NET开发方案。它没有用砍功能来换取速度,而是试图让用户在保持轻量编辑体验的同时,获得重型IDE级别的洞察力。调试的落地加上值追踪、调用层次导航和项目管理的细化,让这个工具越发接近“你一直呆在这个窗口就够了”的理想状态。当然,现实中的工程永远比发布会复杂,那些依然容易卡住你的依赖地狱、启动性能或是大型解决方案的加载速度,这次更新没有直接