Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
PrunePackageReference özelliği, hedef platform tarafından sağlanan geçişli paketleri otomatik olarak kaldırır. Bu değişiklikle birlikte özellik, ve öznitelikleriyle PackageReferencePrivateAssets=all ayıklama yapılabilir IncludeAssets=none öğeleri de işaretler. Bu öznitelikler paketlerin paketler için oluşturulan bağımlılık listelerinde görünmesini engeller.
Sürüm kullanıma sunulmuştur
.NET 10
Önceki davranış
Daha önce ayıklama etkinleştirildiyse, paket platform tarafından sağlandığı durumda bile doğrudan budanabilir PackageReference öğeler oluşturulan .nuspec bağımlılıkları listesinde görünmeye devam ediyordu. (Projeniz .NET 10'a hedeflediyse bir NU1510 uyarı oluşturmış olabilir.)
Örneğin, aşağıdaki yapılandırmaya sahip çoklu hedefleme projesini göz önünde bulundurun:
<PropertyGroup>
<TargetFramework>net10.0;net472</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="System.Text.Json" Version="9.0.8" />
</ItemGroup>
Böyle bir proje dosyası, her iki hedef çerçeve için de bağımlılıkları olan bir .nuspec dosyası oluşturdu:
<dependencies>
<group targetFramework=".NETFramework4.7.2">
<dependency id="System.Text.Json" version="9.0.8" />
</group>
<group targetFramework="net10.0">
<dependency id="System.Text.Json" version="9.0.8" />
</group>
</dependencies>
Yeni davranış
.NET 10'dan itibaren, ayıklama etkinleştirildiğinde, doğrudan budanabilir PackageReference öğeler otomatik olarak PrivateAssets=all ve IncludeAssets=none ile işaretlenir, böylece platform tarafından sağlanan framework'lerdeki bağımlılıklardan hariç tutulur. (Ancak, projeniz .NET 10 veya sonraki bir sürümü hedeflediyse, başvuruyu projenizden kaldırana kadar bir NU1510 uyarı almaya devam edersiniz.)
Aynı proje yapılandırması artık onu sağlayan hedef çerçeveden kaldırılabilir bağımlılığı olan bir .nuspec dosyası oluşturur (.NET 10):
<dependencies>
<group targetFramework=".NETFramework4.7.2">
<dependency id="System.Text.Json" version="9.0.8" />
</group>
<group targetFramework="net10.0">
</group>
</dependencies>
Hataya neden olan değişikliğin türü
Bu değişiklik davranışsal bir değişikliktir.
Değişiklik nedeni
Bu değişiklik, paket bağımlılıklarının her hedef çerçeve için gerçek gereksinimleri doğru şekilde yansıtmasını sağlar. Bu API'ler hedef çerçeve tarafından zaten sağlandığında, oluşturulan paketlerde gereksiz paket başvurularının görünmesini engeller.
Önerilen eylem
- Bir paket oluşturup uyarı
NU1510alırsanız buradaki yönergeleri izleyin. - Bir paket oluşturursanız ve oluşturulan .nuspec bağımlılıkları herhangi bir hedef çerçeve için başvurulabilecek bir paket içermiyorsa, gerekli olmadığından başvuruyu proje dosyasından kaldırın.
- Başvuruda bulunılan paket .nuspec dosyasında görünüyorsa hiçbir eylem gerekmez.
Etkilenen API'ler
Hiç kimse.