Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De volgende PackageVersion-items kunnen geen zwevende versie opgeven: PackageName.
Probleem
Een project is geconfigureerd voor het gebruik van NuGet Central-pakketbeheer en een <PackageVersion /> item wordt gedefinieerd waarmee een zwevende versiewaarde voor het Version kenmerk wordt opgegeven:
<ItemGroup>
  <PackageVersion Include="PackageName" Version="1.*" />
</ItemGroup>
              <PackageVersion /> Standaard kunnen items geen zwevende versies opgeven.
NuGet Central Package Management biedt gebruikers de mogelijkheid om pakketversies op één locatie te beheren, evenals deterministische en veilige herstelbewerkingen.
Het gebruik van zwevende versies introduceert de mogelijkheid dat een slecht pakket in uw build wordt geïntroduceerd nadat het naar een feed is gepusht.
Dit kan leiden tot een situatie waarin u geen wijzigingen hebt aangebracht in uw opslagplaats, maar plotseling is er iets verbroken vanwege een probleem in een nieuw pakket en is het niet mogelijk om weer in een goede staat te komen zonder de zwevende versie te verwijderen of een nieuwere versie van het pakket te pushen dat is opgelost.
Het gebruik van niet-zwevende versies betekent dat elke upgrade naar een pakket wordt ondersteund door een doorvoer in uw opslagplaats, zodat u eenvoudig kunt bepalen welke wijziging de onderbreking heeft veroorzaakt en dat u een doorvoer kunt terugzetten om weer in een goede staat te komen.
Wanneer u de functie voor transitief vastmaken van Central Package Management gebruikt, kan het gebruik van een zwevende versie als een onderdrukking ervoor zorgen dat er herstelbewerkingen van verschillende projecten worden uitgevoerd met verschillende versies voor het pakket dat moet worden vastgemaakt, dus tegen de belofte van het gebruik van de centraal gedefinieerde versie.
NuGet raadt u aan automatisering zoals Dependabot te gebruiken om pakketversies up-to-date te houden. Dit biedt een gestroomlijnde manier om pakketversies bij te werken terwijl u integreert in uw bestaande ontwikkelaarswerkstroom van een pull-aanvraag, geautomatiseerde buildvalidatie en testen die allemaal worden ondersteund door een doorvoering in uw opslagplaats.
Oplossing
- Het wordt aanbevolen om de zwevende versie te wijzigen in een niet-zwevend versiebereik:
 
<ItemGroup>
  <PackageVersion Include="PackageName" Version="1.0.0" />
</ItemGroup>
- Als dat niet mogelijk is of als u zwevende versies wilt gebruiken met Central Package Management, kunt u dit doen door een MSBuild-eigenschap in te stellen:
 
<PropertyGroup>
  <CentralPackageFloatingVersionsEnabled>true</CentralPackageFloatingVersionsEnabled>
</PropertyGroup>