我的Visual Studio Code上的intellisense前几天突然停止工作。我查看了Stack Overflow的所有解决方案,包括查看这些问题:
Visual Studio Code Intellisense Suggestions Dont Pop Up Automatically
Intellisense Does Not Work Visual Studio Code in OSX Yosemite
但是,一切都配置正确:
我尝试重新安装Visual Code并更新C#extensions应用。
有什么问题?
答案 0 :(得分:2)
问题(经过几个小时的研究)是OmniSharp需要Mono运行时。前几天我曾指向coreclr(1.0.0-rc1-update1,coreclr x64,darwin),因为Mono与SSL-to-Azure连接不兼容。为了保持清洁,我刚刚卸载了Mono运行时,希望只使用coreclr
。
这个过程:我首先找到了这个Git帖子:No intellisense on Linux for ASP .NET 5 coreclr x64 1.0.0.-rc1-final。我按照说明显示了OmniSharp输出(如何:Command, Shift, p
在Visual Studio Code中打开提示,然后键入output
,选择Toggle Output
然后使用下拉列表将视图更改为OmniSharp )。尝试智能感知时,此输出显示生成了大量错误。
然后我搜索了这些错误并找到了这个问题/答案Visual Studio Code Designhostmanager Failed。显然,根据Matt的评论,我需要下载Mono运行时,特别是(在我的情况下)Beta5。为此,我在OSX上的终端上运行了dnvm install 1.0.0-beta5
并安装了运行时,并将Mono设置为当前使用的运行时。然后,我运行dnu restore
以确保清除所有正确的库引用。最后,Visual Code提示我进行额外的恢复,我也运行了。这是我的最终输出(请忽略额外的Mono运行时。我正在玩,并不完全确定它们之间的具体差异):
1.0.0-beta4 mono linux/osx
1.0.0-beta5 mono linux/osx
(这是运行时)
1.0.0-rc1-update1 coreclr x64 darwin
1.0.0-rc1-update1 mono linux/osx
1.0.0-rc1-update2 mono linux/osx default
最后,我重新启动了Visual Studio Code,然后重新启动了OmniSharp服务(再次使用Command, Shift, p
命令并输入OmniSharp
并选择重新启动。
这很有用。 Intellisense再次开始工作。
答案 1 :(得分:2)
我有类似的问题,并在OmniSharp日志中看到以下内容:
[ERROR:OmniSharp.Startup] The project system 'DotNetProjectSystem' threw exception during initialization.
The type initializer for 'Crypto' threw an exception.
我偶然发现了GitHub上的this issue,并使用终端运行了以下命令:
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/
在此之后,我使用上面的说明重新启动了OmniSharp,并且IntelliSense又回来了。