.NET Framework hedeflenirken kullanılan varsayılan RID
.NET 8'de,
Ancak bu, .NET ve .NET Framework'e birden fazla platforma hitap eden müşterilerde bozulmalara yol açtı. Bunun nedeni geri yüklemenin bir kez gerçekleşmesidir, ancak .NET Framework projesi eski RID varsayılanını kullanmayı denerken .NET (Core) projesi de yeni azaltılmış RID grafiğini kullanmaya çalışır.
Bu çoklu hedefleme senaryoyu etkinleştirmek için, bu senaryoda artık yeni RID grafiğiyle uyumlu bir varsayılan RID kullanılmıştır.
Sürüm kullanıma sunulmuştur
.NET 9 GA
Önceki davranış
RID ayarlanmamış bir şekilde .NET Framework'ü hedef alan SDK tarzı projeler varsayılan olarak win7-x86
veya win7-x64
oluyordu.
Yeni davranış
RID ayarlanmamış olan .NET Framework'ü hedefleyen SDK tarzı projeler varsayılan olarak win-x86
veya win-x64
şeklindedir.
Kapsamlı değişikliğin türü
Bu değişiklik kaynak uyumluluğunuetkileyebilir.
Değişiklik nedeni
.NET Framework uygulamaları, taşınabilir RID grafiğiyle uyumlu olmayan varsayılan bir RID alıyordu. Bu uyumsuzluk geri yükleme hatasına neden oldu:
Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): hata NETSDK1047: 'D:\1\s\artifacts\obj\MSBuild\project.assets.json' varlık dosyasının 'net472/win7-x64' için bir hedefi yok. Geri yükleme işleminin çalıştığından ve projeniz için TargetFrameworks'e 'net472' eklediğinizden emin olun. Ayrıca projenizin RuntimeIdentifiers öğesine 'win7-x64' eklemeniz gerekebilir. [MSBuild.csproj::TargetFramework=net472]>
Daha fazla bilgi için bkz. dotnet/sdk sorunu #35575.
Önerilen eylem
Bu değişiklikten etkilendiyseniz aşağıdaki eylemlerden birini seçin:
Çalışma zamanı tanımlayıcınızı taşınabilir RID grafı tarafından desteklenen bir değerle güncelleştirin. Proje dosyası örneği:
<PropertyGroup> <RuntimeIdentifier>win-x64</RuntimeIdentifier> </PropertyGroup>
RID'yi komut satırı bağımsız değişkeni olarak belirtirseniz, benzer bir değişiklik yapın. Örneğin,
dotnet publish --runtime win-x64
.Proje dosyasında
UseRidGraph
'ıtrue
olarak ayarlayarak eski RID grafiğine geri dönün.<PropertyGroup> <UseRidGraph>true</UseRidGraph> </PropertyGroup>
Etkilenen API'ler
Hiç kimse.