无法在 JetBrains Rider 中加载解决方案

Unable to load solution in JetBrains Rider

我正在尝试使用 JetBrains 的 Rider IDE 加载一个由 Pluralsight 提供的解决方案,其中包含一个名为“GradeBook”的项目。从 Git 克隆存储库并加载解决方案后,出现错误:

"Project 'GradeBook' load failed: The SDK 'Microsoft.NET.Sdk' specified could not be found. C:\Path\To\RiderProjects\CSharp-GradeBookApplication\GradeBook\GradeBook.csproj at (0:0)"

我检查了我的本地存储库,所有文件都存在且正确。

该项目指定的目标框架版本为 2.0。

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <StartupObject />
  </PropertyGroup>

  <ItemGroup>
    <None Remove="*.gdbk" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
  </ItemGroup>

</Project>

我相信我的环境支持它,因为我在我的安装列表中看到它 运行 次 (Microsoft.NETCore.App 2.0.9)。当我从命令行 运行 dotnet --info 时,我得到以下结果:

.NET Core SDKs installed:
2.1.202 [C:\Program Files\dotnet\sdk]
2.2.105 [C:\Program Files\dotnet\sdk]
3.0.100-preview3-010431 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0-preview3-19153-02 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0-preview3-27503-5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.0.0-preview3-27504-2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

我已验证 Rider 已配置为指向 dotnet.exe 的正确路径:

C:\Program Files\dotnet\dotnet.exe

我也尝试将 TargetFramework 更改为 2.23.0 以绕过此问题。

作为 C# 和 .NET 的新手,我肯定有一些我没有想到的事情来解决这个问题。对于初学者,我没有看到 SDK 下列出的 2.0 版本,但是在安装了我能找到的每个 .NET SDK 之后,包括那些明确表示它们是 v2.0 的,我没有想法,需要帮助来解决这个问题。

我知道在 C# 和 .NET 开发中使用 IDE 而不是 Visual Studio 并不常见,但我认为这个简单的项目没有理由加载失败。

问题归结为我使用的 MSBuild 版本。按照“Using Rider under Windows without Visual Studio: prerequisites”中的说明进行操作后,我指定了一个自定义构建:C:\SDK\MSBuild.0\Bin\MSBuild.exe.

然后我切换到自动检测版本:C:\ProgramFiles\dotnet\sdk.2.105\MSBuild.dll

项目现已加载成功。