C#扩展程序在v2.0.320版本中的IntelliSense有哪些变化?

5
关于IntelliSense的一些事情在2023-08-02的2.0.320版本中发生了变化,导致IntelliSense出现了错误行为。格式似乎存在一些问题,并且我收到了一些我认为不应该收到的警告。发生了什么?我该怎么办?
1个回答

4

版本2.0.320的更新日志条目中提到:

我们将新的Roslyn语言服务器设置为默认选项。我们意识到这个版本与OmniSharp版本并不完全相同。如果您在我们完成之前需要其中一个功能,您可以按照这些说明切换回OmniSharp。

这些链接的说明如下:

如果您不想使用强大的语言服务器功能,您可以通过转到扩展设置并将dotnet.server.useOmnisharp设置为true来恢复使用OmniSharp。然后,卸载或禁用C# Dev Kit。最后,重新启动VS Code以使其生效。

撰写本文时,该设置的描述如下:

启用时切换为使用Omnisharp服务器进行语言功能(需要重新启动)。安装C# Dev Kit后,此选项将不被支持。

所以你可以选择这样做,或者等待功能的平衡和错误修复。最后的另一个选择是回滚到扩展的先前版本(参见VS Code - 如何回滚扩展/安装特定扩展版本)。
你可以在2.0.320版本的已知问题列表中找到https://github.com/dotnet/vscode-csharp/blob/main/CHANGELOG.md#known-issues-in-20320。目前为止,该列表内容如下:
诊断相关的功能请求和改进#5951 [O# Parity] 修复所有支持代码修复和重构#5735 [O# Parity] Nuget恢复#5725 [O# Parity] 支持加载非解决方案基础的项目/文件#5722 [O# Parity] 进程外设计时间构建/传统csproj支持#5721 [O# Parity] 在上下文中运行和调试测试#5719 从.csproj和.sln进行调试#5876 ProcessFrameworkReferences任务意外失败#5980
一些其他相关的历史变化:GitHub 存储库从 OmniSharp/omnisharp-vscode 移动到 dotnet/vscode-csharp。详细信息请参阅 关于基于 LSP 的 Visual Studio Code C# 扩展 #5708 的更新

3
实际的答案是,微软的VS Code C#扩展放弃了开源项目OmniSharp,用自己的闭源扩展替代了它。大约一年前,这引起了相当大的骚动。OmniSharp可以被任何编辑器使用,包括Sublime或Emacs,并且不受微软控制。 - Panagiotis Kanavos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接