Aracılığıyla paylaş


MSB3644: 'FrameworkVersion' için başvuru derlemeleri bulunamadı

Bu hata, bir projenin istediği .NET sürümü için .NET başvuru derlemeleri bulunamadığında oluşur. Projenizin Microsoft.NETFramework.ReferenceAssemblies NuGet paketine bir başvurusu olup olmadığını denetleyin. Bkz . .NET Framework Hedefleme Paketi Nuget Paketleri. Alternatif olarak, proje dosyasında, istediği sürümün tanınmaması veya yüklenmemesiyle ilgili bir sorun olabilir. Ya da bu .NET sürümü için başvuru derlemeleri klasörünün mevcut olmaması veya bozuk olmasıyla ilgili bir yükleme sorunu olabilir.

Proje dosya çerçevesi tanımlayıcısı ve sürümü

, TargetFrameworks, TargetFrameworkIdentifierveya TargetFrameworkVersion özelliklerindeki proje dosyasında TargetFrameworkyazım veya yazım hatası olup olmadığını denetleyin. Örneğin, proje dosyasında aşağıdaki kod oluşturur MSB3644:

    <PropertyGroup Condition="'$(TargetFrameworkIdentifier)' == ''">
        <TargetFrameworkIdentifier>.NETCORAPP</TargetFrameworkIdentifier>
        <TargetFrameworkVersion>3.1</TargetFrameworkVersion>
    </PropertyGroup>

Sorun, TargetFrameworkIdentifier yanlış yazılmış olmasıdır. Bu, .NETCOREAPPdeğil .NETCORAPP olmalıdır (eksik "e" değerini not edin).

özelliğinden ve birden çok hedef çerçeveden TargetFrameworks yararlanırken, doğru sınırlayıcı ;ile ayrıldığından emin olun. MSB3644 örneğin, sınırlayıcıyı kullanarak , çerçeveleri ayırmaya çalışırken ortaya çıkar. Aşağıda doğru söz diziminin bir örneği verilmişti:

    <PropertyGroup>
            <TargetFrameworks>net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
    </PropertyGroup>

Başvuru derlemeleri klasörü

Ardından, , ve içinde TargetFrameworkistenen çerçeve tanımlayıcısını ve sürümünü not edin ve TargetFrameworkVersionyerel sürücüde bu sürüm için başvuru derleme klasörünü TargetFrameworkIdentifierarayın. Örneğin, Windows'da, .NET Core için 32 bit başvuru derlemeleri C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\ altında olmalıdır. IÇIN NETCore ve 64 bit .NET Framework başvuru derleme klasörleri C:\Program Files\Reference Assemblies\Microsoft\Framework\ altında olmalıdır. NETFramework. Projenizin ihtiyaç duyduğu sürümün klasörü yoksa veya bozuk görünüyorsa, bu sürümü yüklemeniz veya yeniden yüklemeniz gerekebilir. Gerekli sürümü İndirme .NET adresinden yükleyebilirsiniz.

Ayrıca bkz.