Delen via


Pakketvalidatie

Met pakketvalidatieprogramma's kunt u, als bibliotheekontwikkelaar, valideren dat uw pakketten consistent en goed zijn gevormd. Het biedt de volgende controles:

  • Valideert dat er geen wijzigingen zijn die fouten veroorzaken in verschillende versies.
  • Valideert dat het pakket dezelfde set openbare API's heeft voor alle verschillende runtimespecifieke implementaties.
  • Eventuele toepasselijkheidsgaten worden onderschept.

U kunt pakketvalidatie uitvoeren als een MSBuild-taak of met het globale hulpprogramma Microsoft.DotNet.ApiCompat.Tool. Als uw app niet kan worden verpakt, gebruikt u in plaats daarvan assemblyvalidatie .

MSBuild-taak inschakelen

U schakelt pakketvalidatie in uw .NET-project in door de EnablePackageValidation eigenschap in te stellen op true.

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFrameworks>netstandard2.0;net6.0</TargetFrameworks>
    <EnablePackageValidation>true</EnablePackageValidation>
  </PropertyGroup>

</Project>

EnablePackageValidation voert een reeks controles na de Pack taak uit. Er zijn enkele extra controles die kunnen worden uitgevoerd door andere MSBuild-eigenschappen in te stellen. Zie De eigenschappen van pakketvalidatie voor meer informatie.

Validatietypen

Er zijn drie verschillende validators die uw pakket verifiëren als onderdeel van de Pack taak:

  • De validatie van de basislijnversie valideert uw bibliotheekproject op basis van een eerder uitgebrachte, stabiele versie van uw pakket.
  • De compatibele runtimevalidator valideert dat uw runtimespecifieke implementatieassembly's compatibel zijn met elkaar en met de compileertijdassembly's.
  • De compatibele frameworkvalidator valideert dat code die is gecompileerd op basis van één framework, kan worden uitgevoerd op alle andere frameworks in een pakket met meerdere targeting.

Compatibiliteitswaarschuwingen onderdrukken

Zie Hoe u compatibiliteitswaarschuwingen onderdrukt voor informatie over het onderdrukken van compatibiliteitswaarschuwingen.