Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Scenario
PackageReference System.Text.Json wird nicht gekürzt. Erwägen Sie, dieses Paket aus Ihren Abhängigkeiten zu entfernen, da es wahrscheinlich unnötig ist.
Issue
Diese Warnung wird aufgrund der Beschnittung von NuGet-Abhängigkeitsdiagrammen ausgelöst und weist darauf hin, dass ein andernfalls nicht wiederhergestelltes Paket aufgrund eines direkten PackageReferenceElements wiederhergestellt wurde.
Das benannte Paket kann gelöscht werden, wenn das direkte PackageReference Paket entfernt wird, da das zielorientierte .NET SDK dieselbe Version oder höher dieser Assembly bereitstellt.
Diese Warnung betrifft nur Pakete, die für die Beschnittung über das PrunePackageReference-Feature registriert sind.
Er wird nur ausgelöst, wenn die PackageReference betreffende Person vollständig aus dem Projekt entfernt werden kann.
Beispiel 1
Wenn das gezielte .NET SDK eine entsprechende Version enthält, wählt die Konfliktauflösung von Abhängigkeiten die SDK-gebündelte Assembly aus:
<PropertyGroup>
<!-- 'System.Text.Json' is SDK-bundled in 'net10.0' -->
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<!-- The assembly provided by this reference will not be used -->
<PackageReference Include="System.Text.Json" Version="10.0.0" />
</ItemGroup>
Beispiel 2
Wenn das zielorientierte .NET SDK eine entsprechende Version für mehrere Frameworkziele enthält, wählt die Konfliktauflösung von Abhängigkeiten die entsprechende SDK-gebündelte Assembly für jedes Ziel aus:
<PropertyGroup>
<!-- 'System.Text.Json' is SDK-bundled in both TFMs -->
<TargetFrameworks>net9.0;net10.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<!-- Neither of the assemblies provided by these references will be used -->
<PackageReference Include="System.Text.Json" Version="10.0.0" Condition="'$(TargetFramework)' == 'net10.0'"/>
<PackageReference Include="System.Text.Json" Version="9.0.4" Condition="'$(TargetFramework)' == 'net9.0'"/>
</ItemGroup>
Solution
Entfernen Sie die unnötigen PackageReference.
Note
Ab .NET 10 ist das PrunePackageReference Feature standardmäßig für alle Projekte aktiviert, die auf .NET 10 oder höher abzielen. Die Warnung wird nur ausgelöst, wenn die Bereinigung für alle Laufzeitziele gilt:
<PropertyGroup>
<!-- 'System.Text.Json' is not SDK-bundled in 'net48' -->
<TargetFrameworks>net10.0;net48</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<!-- This reference is needed in 'net48' - NU1510 is not raised -->
<PackageReference Include="System.Text.Json" Version="9.0.7" />
</ItemGroup>