首页
/ OmniSharp-vscode 2.72.34版本发布:Razor场景修复与功能优化

OmniSharp-vscode 2.72.34版本发布:Razor场景修复与功能优化

2025-06-17 16:17:00作者:邵娇湘

项目简介

OmniSharp-vscode是Visual Studio Code中为C#开发者提供智能编码支持的扩展工具。它基于Roslyn编译器平台构建,为开发者提供代码补全、错误诊断、重构建议等核心功能,同时支持Razor页面和XAML文件的开发。该项目是.NET生态中重要的开发工具之一,持续为开发者提供流畅的编码体验。

版本更新亮点

2.72.34版本主要针对Razor场景中的回归问题进行了修复,同时包含了一系列功能优化和稳定性提升。这个版本是2.72.x系列的维护更新,重点解决了开发者在实际使用中遇到的关键问题。

核心变更内容

Razor相关修复

本次更新特别关注了Razor场景下的稳定性问题,主要修复包括:

  1. 诊断请求优化:现在仅对打开的C#文件发送构建诊断ID请求,减少了不必要的网络通信和资源消耗,提高了Razor页面的响应速度。

  2. 变更检测改进:忽略对C#文件的无实质内容更新,避免了无效的重新解析过程,使Razor页面编辑更加流畅。

  3. 补丁修复:插入了一个关键的Razor修复补丁,解决了特定场景下的功能异常问题。

编译器与工具链更新

  1. Roslyn编译器升级:更新至4.14.0-3.25178.1版本,带来了多项改进:

    • 新增null条件赋值操作符支持
    • 改进了原始字符串补全功能
    • 优化了项目默认命名空间设置
    • 修复了主构造函数的命名空间移动问题
    • 重构了分析器程序集加载机制
  2. Razor工具增强:升级至9.0.0-preview.25161.2版本,包含:

    • 代码操作排序和清理优化
    • 空表达式预处理指令生成
    • 新的格式化引擎文本区域处理
    • 迁移至.NET 9平台
  3. XAML工具回滚:将XAML工具回退至17.14.35913.250版本,确保稳定性。

功能优化与体验改进

  1. SDK安装体验:当新SDK可用时,采用更优的安装流程。

  2. 资产生成命令:仅在扩展激活状态下启用"生成资产"命令,避免混淆。

  3. 实验性API:新增sendRequestWithProgress作为实验性API,为开发者提供更多控制选项。

  4. 问题报告:优化了Razor问题报告的措辞,使其更加清晰明确。

技术深度解析

本次更新在底层架构上有多项值得关注的技术改进:

  1. 诊断系统优化:通过精确控制诊断请求范围,显著降低了系统负载。这一改进特别有利于大型解决方案中的Razor页面开发,减少了不必要的后台处理。

  2. 分析器加载机制:新的分析器加载方式避免了重复抑制器的添加,提高了代码分析效率,同时降低了内存占用。

  3. 语义标记处理:清理并使语义标记处理和测试代码更加一致,为未来的语言服务功能扩展奠定了基础。

  4. 数组常量属性生成:修复了带有数组常量的属性生成问题,提高了代码生成的准确性。

开发者影响评估

对于不同类型的开发者,本次更新带来的价值有所不同:

  1. Web开发者:Razor场景的稳定性修复直接提升了ASP.NET Core开发体验,特别是在大型项目中编辑cshtml文件时的响应速度明显改善。

  2. 桌面应用开发者:XAML工具的回滚确保了WPF/UWP开发的稳定性,避免了潜在的工具链问题。

  3. 扩展开发者:新增的实验性API为自定义开发体验提供了更多可能性,特别是需要精细控制请求进度的场景。

  4. 团队协作开发者:改进的代码分析和重构功能使团队协作更加高效,特别是在处理大型代码库时。

升级建议

基于本次更新的内容,我们建议:

  1. 所有用户:特别是使用Razor页面的开发者,建议尽快升级以获得更稳定的体验。

  2. 早期采用者:可以尝试新的实验性API,但需注意其可能的变化。

  3. 企业环境:在测试环境中验证后部署,特别是关注与现有工作流的兼容性。

  4. 教育用户:新加入.NET生态的开发者可以受益于更稳定的工具链,减少学习过程中的工具相关问题。

未来展望

从本次更新的技术方向可以看出,OmniSharp团队正在:

  1. 持续优化核心语言服务的性能和稳定性
  2. 加强对现代Web开发场景的支持
  3. 为开发者提供更细粒度的控制能力
  4. 为.NET 9平台的全面支持做准备

开发者可以期待未来版本在跨语言开发体验、性能优化和现代化工具链整合方面的进一步改进。

登录后查看全文
热门项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
895
531
KonadoKonado
Konado是一个对话创建工具,提供多种对话模板以及对话管理器,可以快速创建对话游戏,也可以嵌入各类游戏的对话场景
GDScript
21
13
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
7
0
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
85
4
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
372
387
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.09 K
0
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
94
15
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
625
60
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
401
377