Udostępnij za pośrednictwem


Automatyczne środowisko uruchomienioweIdentifier tylko do publikowania

W zestawie SDK w wersji 7.0.100 wprowadzono zmianę umożliwiającą automatyczne dodawanie <RuntimeIdentifier> do projektów z właściwościami, które wymagają identyfikatora środowiska uruchomieniowego (RID). Te właściwości są następujące:

  • SelfContained
  • PublishAot
  • PublishReadyToRun
  • PublishSingleFile
  • PublishSelfContained

Jednak wszystkie te właściwości z wyjątkiem SelfContained są używane tylko do publikowania. Jednak niejawna <RuntimeIdentifier> została dodana dla dowolnej dotnet operacji , jeśli te właściwości znajdowały się w pliku projektu lub zostały określone jako część dotnet polecenia.

Teraz automatyczne identyfikatory RID dla tych właściwości, z wyłączeniem SelfContained, są dodawane tylko podczas publikowania. Ponadto automatyczne identyfikatory RID są dodawane tylko podczas korzystania z polecenia interfejsu dotnet publish wiersza polecenia. Nie jest dodawany podczas publikowania z programu Visual Studio lub msbuild, ponieważ są to oddzielne mechanizmy, a program Visual Studio powinien podać własne identyfikatory RID.

Wprowadzona wersja

Zestaw .NET 7.0.200 SDK

Poprzednie zachowanie

Wcześniej, jeśli określono dowolną z wymienionych właściwości, identyfikator RID został automatycznie dodany do projektu.

Nowe zachowanie

Identyfikator RID jest automatycznie dodawany tylko dla dotnet publish polecenia .

Jeśli wykonano przywracanie bez identyfikatora RID na platformie .NET 7 i użyjesz go do przywrócenia polecenia publish --no-restore w projekcie z jedną z wymienionych właściwości, należy określić identyfikator RID przy użyciu polecenia dotnet restore -r <RID>.

Typ zmiany powodującej niezgodność

Ta zmiana może mieć wpływ na zgodność binarną i zgodność ze źródłem.

Przyczyna wprowadzenia zmiany

Zmiana identyfikatora RID była zmianą powodującą niezgodność i nie było potrzeby zmiany właściwości publikowania w celu przerwania dotnet build i innych poleceń niezwiązanych z publikowaniem.

Aby wykonać akcję podobną restore do następującej: publish --no-restore, należy dodać identyfikator RID przy użyciu polecenia dotnet restore -r RID. W takim przypadku lepiej być jawnym podczas publikowania, więc publikowanie ma ten sam identyfikator RID (przy użyciu polecenia dotnet publish -r RID). Alternatywnie możesz usunąć z --no-restore polecenia publikowania.

Dla wszystkich innych elementów nie jest wymagana żadna akcja. Jeśli jednak chcesz zachować identyfikator RID, dodaj go do pliku projektu w następujący sposób: <RuntimeIdentifier>win-x64</RuntimeIdentifier>.

Zobacz też