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.
Zalecana akcja
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>
.