当我尝试使用 OpenProjectAsync 打开项目时,为什么 msbuild 会给我一个 "language "C#“不支持”错误

Why does msbuild give me a "language "C#" not supported" error when I try to open a project with OpenProjectAsync

所以我有这个代码:

 string path = Path.GetFullPath(@"C:\Users\Umut\source\repos\frmMain\frmMain.sln");
 string path2 = Path.GetFullPath(@"C:\Users\Umut\source\repos\frmMain\geometryLib\geometryLib.csproj");

 var workspace = MSBuildWorkspace.Create();
 Solution solution =  workspace.OpenSolutionAsync(path).Result;
 Project project = workspace.OpenProjectAsync(path2).Result;

我想要做的是:加载解决方案和其中的每个项目。加载解决方案有效,没有错误。但是当我尝试 load/open 一个项目时,我得到了这个错误:未处理的异常:System.AggregateException:发生了一个或多个错误。 (Projekt "C:\Users\Umut\source\repos\frmMain\geometryLib\geometryLib.csproj" kann nicht geöffnet werden, da die Sprache "C#" nicht unterstützt wird.) ---> System.InvalidOperationException: Projekt "C:\Users\Umut\source\repos\frmMain\geometryLib\geometryLib.csproj " kann nicht geöffnet werden, da die Sprache "C#" nicht unterstützt wird。

德语部分说:“无法打开项目,因为不支持语言“C#”。

如何摆脱这个错误?

编辑:我使用 .NET Core 2.1 并安装了这些 Nugets:

Microsoft.Build; Microsoft.Build.框架; Microsoft.Build.定位器; Microsoft.Build.Utilities.Core;全部在 v16.7.0

Microsoft.CodeAnalysy.CSharp; Microsoft.CodeAnalysis.Workspaces.MSBuild v3.4.0

答案是安装 .CSharp.Workspaces NuGet 包。