0

我正在运行 Visual Studio Code 1.4.0、.NET Core 1.0 和 .NET Core SDK Preview 2。在 Windows 10 x64 和 Ubuntu 16.04 x64 上进行了测试,发现了同样的问题。

在最简单的示例中,我的文件夹结构如下所示:

- Repo\
  |
  +-- global.json
  |
  +-- LibOne\
  |   |
  |   +-- project.json
  |   +-- ClassOne.cs
  |
  +-- LibOne.Tests\
      |
      +-- project.json
      +-- ClassOneTests.cs
  • 完整示例可在此 GitHub 存储库中找到。
  • LibOne是一个类库
  • LibOne.Tests包含 xUnit 测试LibOne
  • LibOne.TestsLibOne在其依赖项中指定。
  • 我能够使用 CLI 和 VS Code 成功恢复、编译和运行测试。

问题在于 IntelliSense。当我Repo在 VS Code 中打开文件夹时,IntelliSense 不起作用。但是,如果我打开其中一个LibOneLibOne.Tests文件夹,一切正常。

我注意到的不同之处在于,当我打开Repo文件夹时,我没有 OmniSharp 的日志(在 VS Code 中,查看 -> 输出 -> OmniSharp 日志)。而对于项目文件夹,我可以看到 OmniSharp 如何加载、如何查找项目等的日志。看起来 OmniSharp 以某种方式未触发或与包含 的文件夹无关global.json,并且仅在打开包含的文件夹时加载project.json.

我会很感激任何关于这里可能出错的想法。

4

1 回答 1

2

我应该更好地阅读文档。这是我所缺少的:https ://code.visualstudio.com/docs/editor/codebasics#_opening-a-project

在 VS Code 中,当打开一个包含多个项目的文件夹时,一次只有一个项目处于活动状态(最初没有一个项目处于活动状态)。项目选择器位于状态栏的右下角。

文档中仍然缺少的是IntelliSense 仅适用于活动项目。不确定是 VSCode 还是 OmniSharp 限制。一旦我选择了一个活动项目,该项目的 IntelliSense 就开始工作。

不方便,但总比没有好。

于 2016-08-27T21:14:46.363 回答