MSB3644: ссылочные сборки для версии платформы "FrameworkVersion" не найдены
Эта ошибка возникает, когда эталонные сборки .NET не найдены для версии .NET, запрашиваемой проектом. Убедитесь, что в проекте есть ссылка на пакет NuGet Microsoft.NETFramework.ReferenceAssemblies . См. платформа .NET Framework пакеты Nuget для целевого пакета. Кроме того, может возникнуть проблема с файлом проекта в том, что запрашиваемая версия не распознается или не установлена. Или может возникнуть проблема с установкой, что папка ссылочных сборок для этой версии .NET отсутствует или повреждена.
Идентификатор и версия платформы в файле проекта
Убедитесь, что в файле проекта нет орфографических или типографических ошибок в TargetFramework
свойствах или TargetFrameworkVersion
свойствах. TargetFrameworks
TargetFrameworkIdentifier
Например, следующий код в файле проекта создает MSB3644
:
<PropertyGroup Condition="'$(TargetFrameworkIdentifier)' == ''">
<TargetFrameworkIdentifier>.NETCORAPP</TargetFrameworkIdentifier>
<TargetFrameworkVersion>3.1</TargetFrameworkVersion>
</PropertyGroup>
Ошибка заключается в том, что значение свойства TargetFrameworkIdentifier
указано с орфографическими ошибками. Здесь должно быть .NETCOREAPP
, а не .NETCORAPP
(обратите внимание на отсутствие "e").
При использовании TargetFrameworks
свойства и нескольких целевых платформ убедитесь, что они разделены правильным разделителем ;
. MSB3644
будет происходить, например, при попытке разделения платформ с помощью ,
разделителя. Ниже приведен пример правильного синтаксиса:
<PropertyGroup>
<TargetFrameworks>net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
</PropertyGroup>
Папка ссылочных сборок
Затем обратите внимание на идентификатор и версию платформы, запрошенную в TargetFramework
папке сборок TargetFrameworkIdentifier
, и TargetFrameworkVersion
найдите папку эталонной сборки для этой версии на локальном диске. Например, в Windows 32-разрядные ссылочные сборки для .NET Core должны находиться в папке C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore, а 64-разрядные ссылочные сборки для .NET Framework — в папке C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework. Если папка для версии проекта отсутствует или повреждена, может потребоваться установить или переустановить эту версию. Скачать необходимую версию можно на сайте Скачать .NET.