NETSDK1071: PackageReference versi eksplisit ke metapackage yang akan disertakan dengan kerangka kerja.
Artikel ini berlaku untuk: ✔️ .NET 5.0.100 SDK dan versi yang lebih baru
Ketika .NET SDK mengeluarkan peringatan NETSDK1071, itu menunjukkan mungkin ada konflik versi di masa depan antara versi metapackage yang ditentukan dalam PackageReference dan versi metapackage tersebut sebagaimana direferensikan secara implisit melalui properti TargetFramework:
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>
TargetFramework
Karena secara otomatis membawa versi metapackage, versi akan bertentangan jika mereka pernah berbeda.
Untuk mengatasi hal ini:
Saat Anda menargetkan .NET Core atau .NET Standard, pertimbangkan untuk menghindari referensi eksplisit ke
Microsoft.NETCore.App
atauNETStandard.Library
dalam file proyek Anda.Jika Anda memerlukan versi runtime tertentu saat menargetkan .NET Core, gunakan
<RuntimeFrameworkVersion>
properti alih-alih mereferensikan metapackage secara langsung. Sebagai contoh, ini dapat terjadi jika Anda menggunakan penyebaran mandiri dan memerlukan patch tertentu dari runtime 1.0.0 LTS.Jika Anda memerlukan versi
NetStandard.Library
tertentu saat menargetkan .NET Standard, Anda dapat menggunakan<NetStandardImplicitPackageVersion>
properti dan mengaturnya ke versi yang Anda butuhkan.Jangan secara eksplisit menambahkan atau memperbarui referensi ke atau
Microsoft.NETCore.App
NETSTandard.Library
dalam proyek .NET Framework. NuGet secara otomatis menginstal versi apa pun yangNETStandard.Library
Anda butuhkan saat menggunakan paket NuGet berbasis Standar .NET.Jangan tentukan versi untuk
Microsoft.AspNetCore.App
atauMicrosoft.AspNetCore.All
saat menggunakan .NET Core 2.1+, karena .NET SDK secara otomatis memilih versi yang sesuai. (Catatan: Ini hanya berfungsi saat menargetkan .NET Core 2.1 jika proyek juga menggunakanMicrosoft.NET.Sdk.Web
. Masalah ini diselesaikan di .NET Core 2.2 SDK.)Jika Anda ingin peringatan hilang, Anda juga dapat menonaktifkannya:
<PackageReference Include="Microsoft.NetCore.App" Version="2.2.8" > <AllowExplicitVersion>true</AllowExplicitVersion> </PackageReference>