【发布时间】:2020-12-14 04:53:42
【问题描述】:
我在 macOS Catalina 上运行:
- vscode 1.48.1
- ms-dotnettools.csharp 1.23.1(下面是omnisharp)
- Visual Studio For Mac 8.7.3
- 单声道 MDK 6.12.0.91
我有一个针对 .NET 4.6.1 的项目。我在这个项目中使用 vscode。由于 Xamarin 的原因,我还有另一个使用 Visual Studio For Mac 的项目。不幸的是,Visual Studio For Mac 的更高版本似乎至少需要 Mono MDK 6.10.x。该版本似乎不支持 .NET 4.6.1。这意味着 Omnisharp 无法为 vscode 项目加载项目。我尝试将 Mono MDK 降级为 vscode 项目,但没有成功。我所有的谷歌搜索都让我进入了具有 .NET 框架 4.6.1 的 Windows 开发人员包的下载页面,这些都是无用的,或者通过设置环境变量来强制 Omnisharp 在其他路径上查看 4.6.1 框架的方法, FrameworkPathOverride,到我的系统上不存在的适当位置。在这一点上,我能看到的唯一路径是将我的 4.6.1 应用程序重新定位到更高版本的框架,但这将花费很长时间。我真正需要的是 macOS 的 4.6.1 框架。哈普?
编辑:是的,我知道 .NET 适用于 Windows,而 Mono 适用于其他一切。 Mono 提供与 .NET 版本的兼容性,而 Omnisharp 过去已正确处理了这一点。该问题仅在更新 Visual Studio For Mac 和 Mono MDK 后出现。
编辑:已解决,有关详细信息,请参阅已接受的答案
【问题讨论】:
-
只有 .NET Core 是 OmniSharp 的目标,因此 .NET Framework 或 Mono 不在范围内(因此它们可能会工作和中断)。您可以通过github.com/OmniSharp/omnisharp-vscode/issues 直接与开发人员交谈
-
@LexLi 虽然没有与我的问题相关的未解决问题,但仔细阅读 repo 后我找到了一个解决方案,我将在此处发布作为回复。谢谢!
标签: c# macos visual-studio-code mono omnisharp