当 VS Code 中存在多个解决方案文件时,dotnet restore 不创建 bin

dotnet restore not creating bin when multiple solution files are present in VS Code

我有一个包含两个 .csproj 文件和两个 .sln 文件的应用程序,每个 .csproj 一个。当我 运行 dotnet restore program_one.sln 时,它会按预期创建 binobj 文件夹。然而,当我 运行 dotnet restore program_two.sln 它只创建 obj 文件夹,并且没有 bin 我的智能感知失败,我安装的大多数插件也是如此。

我已经在 visual studio 中打开了这个项目,并且两个解决方案都没有问题地加载并且智能感知工作没有问题。

如果我删除 program_one.sln 然后恢复 program_two.sln,它将包含一个 bin 文件并且一切正常。这仅仅是 VS Code 不支持的东西吗?我需要更改 launch.jsontasks.json 吗?

找到的解决方案:

这个问题最终与 dotnet restore 根本无关,而是创建 bin 文件夹的 omnisharp。 Omnisharp 只能加载一个解决方案文件,因此最终这种情况会导致一些问题。

通过 Ctrl+Shift+P/CMD+Shift+P 使用 omnisharp 命令,你可以告诉它使用 OmniSharp: Select Project 命令加载不同的解决方案。