我在Debian 9上使用Visual Studio Code有一个项目文件夹,其中包含一个引用了两个项目的解决方案文件。当打开该文件夹时,会出现一个横幅,上面写着“某些项目无法加载,请查看输出以获取更多详细信息”。查看输出后,主要的WebAPI项目会显示以下异常:
[warn]: OmniSharp.MSBuild.MSBuildProjectSystem
Failed to load project file '/home/aidan/Projects/WebApiDemo/WebApiDemo/WebApiDemo.csproj'.
/home/aidan/Projects/WebApiDemo/WebApiDemo/WebApiDemo.csproj(1,1)
Microsoft.Build.Exceptions.InvalidProjectFileException: The SDK 'Microsoft.NET.Sdk.Web' specified could not be found.
单元测试项目返回相似的错误信息:
The SDK 'Microsoft.NET.Sdk'指定的SDK未找到。
针对这种类型问题的其他答案都涉及到一个名为global.json的文件,但是我在我的项目中没有找到任何该文件。我的项目是新创建的.NET Core 2项目,并非从旧版本转换而来。添加global.json文件无济于事。一开始它是工作的,我不确定自己做了什么导致它出问题。我的$PATH变量中有dotnet文件夹。项目文件如下:<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />
</ItemGroup>
</Project>
由于我在项目中没有看到任何关于SDK或其位置的明确引用,我陷入了困境 - 有什么想法导致了这种情况?