У меня возникает следующая проблема при попытке программно собрать .vcxproj
из теста C #.
System.TypeLoadException : Could not load type 'Microsoft.Build.Framework.IProjectElement' from assembly 'Microsoft.Build.Framework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
at Microsoft.Build.Evaluation.ProjectRootElementCache..ctor(Boolean autoReloadFromDisk)
at Microsoft.Build.Evaluation.ProjectCollection..ctor(IDictionary`2 globalProperties, IEnumerable`1 loggers, IEnumerable`1 remoteLoggers, ToolsetDefinitionLocations toolsetDefinitionLocations, Int32 maxNodeCount, Boolean onlyLogCriticalEvents) in E:\A\_work\82\s\src\Build\Definition\ProjectCollection.cs:line 307
at Microsoft.Build.Evaluation.ProjectCollection..ctor() in E:\A\_work\82\s\src\Build\Definition\ProjectCollection.cs:line 252
Это происходит, как только мой код достигает самого первого выражения new ProjectCollection()
. Я добавил следующие строки в мой файл .csproj
.
<PackageReference Include="Microsoft.Build" Version="15.6.85" />
Почему он ищет версию 14 для Microsoft.Build.Framework
? Почему это не может загрузить это. Я в Visual Studio 2017, я получаю те же результаты от команды dotnet test
.