OmniSharp智能感知无法识别新的类文件

时间:2020-11-05 00:31:44

标签: c# .net-core visual-studio-code omnisharp

我有一个通过cli通过

生成的dotnet核心控制台应用程序

dotnet new console -n EODG.VsCodeTester.Cli

使用C# Extensions扩展名,我右键单击VSCode中的项目文件夹,然后单击“新建C#类”。

类/文件可以很好地打开,但是Omnisharp似乎无法识别该文件/类。从Program.cs起,该类不会显示在代码完成中,并且新类中的编解码器也不会显示。

从OmniSharp日志中输出以下内容...

[info]: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionService
        Could not find document for file c:\Users\elrod\src\test\src\EODG.VsCodeTester.Cli\Cat.cs

现在,如果我重新启动OmniSharp,它可以很好地识别新文件...但是,每当我创建一个新的类/接口或重命名它们时,重新启动omnisharp都会有些痛苦。我以前从未见过,从v1开始,我就一直在vscode中进行dotnet核心开发。

我尝试使用Google搜索OmniSharp "Could not find document for file" ...,它说No results found for OmniSharp "Could not find document for file". ...所以很好。

相关详细信息

  • 操作系统:Windows 10(全新安装,不到2小时就可以使用)
  • VSCode版本:1.50.1
  • OmniSharp版本:1.23.5
  • Dotnet版本:3.1.403

我将很乐意提供我能提供的其他详细信息。

谢谢大家!

3 个答案:

答案 0 :(得分:9)

似乎OmniSharp 1.23.5版可能已被废除...我恢复为1.23.3版,现在一切正常。可能与他们的git repo上的this issue相关。

更新:更新至v1.23.6可解决此问题。

答案 1 :(得分:1)

在我的 Mac 上对我有用的是,在设置中,搜索 omnisharp,然后查找显示 Omnisharp: Use Global Mono 的选项并将其设置为 always.

答案 2 :(得分:-1)

我检查了日志,在发现一个有权限限制的文件夹后,omnishap 似乎停止工作,我删除了该文件夹,然后它又开始工作了。

我也重启了 omnisharp shift + ctrl + p 并输入 restart omnisharp

omnisharp logs