Walidacja pakietu

Narzędzie sprawdzania poprawności pakietów umożliwia deweloperowi biblioteki sprawdzenie, czy pakiety są spójne i dobrze sformułowane. Zapewnia ona następujące kontrole:

  • Sprawdza, czy nie ma żadnych zmian powodujących niezgodność w różnych wersjach.
  • Sprawdza, czy pakiet ma ten sam zestaw publicznych interfejsów API dla wszystkich różnych implementacji specyficznych dla środowiska uruchomieniowego.
  • Przechwytuje wszelkie otwory stosowania.

Walidację pakietu można uruchomić jako zadanie MSBuild lub za pomocą narzędzia globalnego Microsoft.DotNet.ApiCompat.Tool. Jeśli aplikacja nie jest pakowalna, użyj walidacji zestawu.

Włączanie zadania MSBuild

Walidację pakietów można włączyć w projekcie platformy .NET, ustawiając EnablePackageValidation właściwość na true.

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

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

</Project>

EnablePackageValidation uruchamia serię testów po zadaniu Pack . Istnieją dodatkowe kontrole, które można uruchomić, ustawiając inne właściwości programu MSBuild. Aby uzyskać więcej informacji, zobacz Właściwości weryfikacji pakietu.

Typy modułów sprawdzania poprawności

Istnieją trzy różne moduły sprawdzania poprawności, które weryfikują pakiet w ramach Pack zadania:

  • Moduł sprawdzania wersji punktu odniesienia sprawdza poprawność projektu biblioteki względem wcześniej wydanej, stabilnej wersji pakietu.
  • Moduł sprawdzania poprawności zgodnego środowiska uruchomieniowego sprawdza, czy zestawy implementacji specyficzne dla środowiska uruchomieniowego są ze sobą zgodne i z zestawami czasu kompilacji.
  • Moduł sprawdzania poprawności zgodnej struktury sprawdza, czy kod skompilowany na jednej strukturze może być uruchamiany względem wszystkich pozostałych w pakiecie wielowersyjnym.

Pomijanie ostrzeżeń dotyczących zgodności

Aby uzyskać informacje na temat pomijania ostrzeżeń dotyczących zgodności, zobacz Jak pominąć.