Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie eine RuntimeIdentifier
in Ihrer Projektdatei angeben oder die -r
Option mit dotnet
verwenden, legt das .NET SDK standardmäßig fest, dass die Build-, Veröffentlichungs- und Ausgabergebnisse eigenständige Anwendungen sind. Der Standardwert ohne Angabe RuntimeIdentifier
ist, dass eine frameworkabhängige Anwendung vorhanden ist. Diese Änderung führt eine neue Warnung (NETSDK1179) ein, wenn Sie eine RuntimeIdentifier
ohne Angabe angeben, ob die Anwendung eigenständig ist.
Eingeführte Version
.NET 6 RC 1
Vorheriges Verhalten
In früheren Versionen wurde durch die Angabe einer RuntimeIdentifier
die Anwendung stillschweigend von einer frameworkabhängigen Anwendung in eine eigenständige Anwendung geändert.
Neues Verhalten
Wenn Sie in .NET 6 eine RuntimeIdentifier
ohne Angabe angeben, ob die Anwendung eigenständig ist, erhalten Sie die folgende Warnung:
Warnung NETSDK1179: Eine der Optionen „--self-contained“ oder „--no-self-contained“ ist erforderlich, wenn „--runtime“ verwendet wird.
Beispielsweise generiert der folgende Befehl die Warnung:
dotnet publish -r win-x86
Kategorie ändern
Diese Änderung kann sich auf die Quellkompatibilität auswirken.
Grund für Änderung
Der Standardwert ohne Angabe RuntimeIdentifier
besteht darin, eine frameworkabhängige Anwendung zu generieren. Diese Standardeinstellung verursachte Verwirrung für viele Kunden. Der Zweck des Hinzufügens der Warnung besteht darin, folgendes zu tun:
- Sie soll Kunden vor der Verhaltensänderung warnen, die durch die standardmäßige Erstellung einer frameworkabhängigen App entsteht.
- Ermutigen Sie Kunden, die Art der Anwendung auszuwählen, die sie erstellen möchten.
- Bereiten Sie die Kunden darauf vor, dass das Verhalten in .NET 7 möglicherweise standardmäßig framework-abhängig wird.
Empfohlene Aktion
- Geben Sie einen booleschen Wert in der Projektdatei für
SelfContained
. - Oder fügen Sie
--self-contained
mit einem Wert zu Ihrem Build- oder Publish-Befehl hinzu.
Betroffene APIs
Nicht verfügbar