Udostępnij za pośrednictwem


NETSDK1206: Znaleziono identyfikatory środowiska uruchomieniowego specyficzne dla wersji lub specyficzne dla dystrybucji

NETSDK1206 wskazuje, że projekt zawiera zasoby dla identyfikatorów środowiska uruchomieniowego specyficznego dla wersji lub dystrybucji. W środowisku .NET 8 i nowszym środowisko uruchomieniowe nie uwzględnia już identyfikatorów ZAREZERWOWANYch specyficznych dla wersji lub dystrybucji domyślnie i znajdzie zasoby specyficzne dla identyfikatorów RID przy użyciu znanego zestawu przenośnych identyfikatorów RID. Ostrzeżenie będzie zawierać listę identyfikatorów ZAREZERWOWANYch i pakietów, których dotyczy problem.

Najpierw sprawdź nowszą wersję wszystkich pakietów, których dotyczy problem, aby sprawdzić, czy zostały przeniesione do przenośnych identyfikatorów ZAREZERWOWANYch. Wiele pakietów zostało już przeniesionych do przenośnych identyfikatorów RID w ich najnowszych wersjach. Jeśli taka wersja nie istnieje, zalecamy skontaktowanie się z autorami pakietów w celu zażądania przełączenia pakietu w celu używania tylko przenośnych identyfikatorów RID.

Jeśli wiesz, że aplikacja nie potrzebuje określonego identyfikatora RID — na przykład nie jest ona przeznaczona do uruchamiania na platformie określonej przez identyfikator RID — możesz pominąć ostrzeżenie przy użyciu NoWarn właściwości MSBuild. Na przykład:

<PropertyGroup>
  <NoWarn>$(NoWarn);NETSDK1206</NoWarn>
</PropertyGroup>

Jeśli aplikacja wymaga określonego identyfikatora RID, a pakiet, którego dotyczy problem, nie ma wersji korzystającej z przenośnych identyfikatorów RID, środowisko uruchomieniowe można skonfigurować do wykonywania rozpoznawania zasobów za pośrednictwem starego grafu RID z identyfikatorami ZAREZERWOWANYmi specyficznymi dla wersji i specyficznymi dla wersji. Należy pamiętać, że stary graf RID nie jest już aktualizowany i istnieje tylko jako opcja zgodności z poprzednimi wersjami.

<ItemGroup>
  <RuntimeHostConfigurationOption Include="System.Runtime.Loader.UseRidGraph" Value="true" />
</ItemGroup>