Freigeben über


.NET SDK-Workloadsätze

Das Feature Workloadsätze stellt eine Versionsnummer bereit, die eine Gruppe von .NET SDK-Workloads darstellt. Die Befehle install, update und restore nutzen diese Nummer im workload-set-Updatemodus, um die folgenden Vorteile zu bieten:

  • Sie steuern den Änderungsrhythmus für installierte Workloadversionen. Der alternative Betriebsmodus ohne Verwendung von Workloadsätzen wird als Updatemodus für lose Manifeste bezeichnet. In diesem Modus werden Workloads automatisch aktualisiert, wenn neue Versionen einzelner Workloads für konfigurierte NuGet-Feeds veröffentlicht werden. Im workload-set-Updatemodus wird für Workloads eine bestimmte Workloadsatzversion beibehalten, bis Sie diese Version explizit ändern.
  • Sie können eine Kombination aus Workloadversionen installieren und aktualisieren, die gleichzeitig ausgeliefert werden und bekanntermaßen zusammen verwendet werden können.
  • Sie können sicherstellen, dass alle Teammitglieder immer an den gleichen Workloadversionen arbeiten.
  • Sie müssen keine Rollbackdatei verwenden, um anzugeben, welche Workloadversion Sie verwenden möchten.

Sie haben z. B. folgende Möglichkeiten zur Verwendung von Workloadsätzen:

  • „Anheften“ des install-Befehls an eine bestimmte Workloadsatzversion
  • Aktualisieren installierter Workloads auf die neueste verfügbare Workloadsatzversion
  • Aktualisieren auf eine angegebene Workloadsatzversion
  • Angeben der Workloadsatzversion in „global.json“
  • Überprüfen des aktuellen Updatemodus und der Workloadsatzversion

Und Sie können Workloadsätze ignorieren und weiterhin die neueste Version der einzelnen Workloads installieren, wiederherstellen oder auf sie aktualisieren.

Voraussetzungen

  • .NET 8.0.400 SDK oder höher.

    Im 8.0.400 SDK befinden sich die dotnet workload-Befehle nur dann im workload-set-Updatemodus, wenn dies explizit ausgewählt wird.

„Anheften“ des Installationsbefehls

Ein dotnet workload install-Befehl mit der Option --version „heftet“ den Befehl install im workload-set-Updatemodus mit der angegebenen Workloadsatzversion an. Der Befehl installiert nicht mehr automatisch die neueste Workload basierend auf losen Manifesten.

So können Sie den install-Befehl „anheften“

  1. Wählen Sie eine Workloadsatzversion aus. Beispiel: 9.0.100-preview.7.24414.1.

  2. Wählen Sie eine Workload aus. Beispiel: aspire.

  3. dotnet workload install aspire --version 9.0.100-preview.7.24414.1
    

    Wenn dieser Befehl ausgeführt wird, geschieht Folgendes:

    • Er wählt den workload-set-Updatemodus aus, wenn er noch nicht ausgewählt ist.
    • Er ruft den Workloadsatz mit der angegebenen Version ab.
    • Er ruft aus dem Workloadsatz die Manifestversion der angegebenen Workload ab.
    • Er installiert die Manifestversion der Workload.
    • Er bleibt im workload-set-Updatemodus, wenn er fertig ist.
  4. Wählen Sie eine andere zu installierende Workload aus, z. B. maui-ios.

  5. dotnet workload install maui-ios
    

    Mit diesem Befehl wird die maui-ios Workload mithilfe der Workloadversion aus der Workload-Set-Version 9.0.100-preview.7.24414.1installiert, da das vorherige install Befehlsbeispiel diesen Workloadsatz angeheftet hat.

Durch die Verwendung von --version mit install oder update wird install an die angegebene Version angeheftet. update wird jedoch nur für den workload-set-Updatemodus konfiguriert, nicht für eine spezifische Workloadsatzversion. Wenn Sie dann dotnet workload update ohne die Option --version ausführen, führt der Befehl update folgende Aktionen aus:

  • Er aktualisiert Workloads auf die neueste verfügbare Workloadsatzversion.
  • Er „löst“ den Befehl install.
  • Er bleibt im workload-set-Updatemodus.

Aktualisieren mithilfe des neuesten Workloadsatzes

Führen Sie die folgenden Befehle aus, um installierte Workloads auf die neueste Workloadsatzversion zu aktualisieren, die für die konfigurierten Feeds verfügbar ist:

  1. dotnet workload config --update-mode workload-set
    

    Der vorherige Befehl ist nur erforderlich, wenn Sie sich derzeit im Manifestupdatemodus befinden. Wenn Sie nicht sicher sind, überprüfen Sie den aktuellen Updatemodus.

  2. dotnet workload update
    

    Im workload-set-Updatemodus aktualisiert dieser Befehl Workloads auf die neueste Workloadsatzversion, es sei denn, Sie haben die Workloadsatzversion in „global.json“ angegeben.

Aktualisieren auf eine Workloadsatzversion

Verwenden Sie die Option --version des update-Befehls, um eine Workloadsatzversion anzugeben, auf die aktualisiert werden soll, wenn Sie keine Version in „global.json“ angeben:

  1. Wählen Sie eine Workloadsatzversion aus. Beispiel: 8.0.400.

  2. dotnet workload update --version 8.0.400
    

    Der workload-set-Updatemodus wird ausgewählt, sofern noch nicht geschehen.

Verwenden von „global.json“ für die Workloadsatzversion

So geben Sie mithilfe einer global.json-Datei die Workloadsatzversion für ein Repository an

  1. Wählen Sie eine Workloadsatzversion aus. Beispiel: 9.0.100-preview.7.24414.1.

  2. Erstellen Sie eine global.json-Datei, die wie das folgende Beispiel aussieht:

    {
      "sdk": {
        "workloadVersion": "9.0.100-preview.7.24414.1"
      }
    }
    

Wenn sich das aktuelle Verzeichnis im selben Repository befindet und die CLI im workload-set-Updatemodus ist, installieren die Befehle install, update und restore Workloads für die angegebene Workloadsatzversion. Wenn Sie nicht über eine global.json Datei verfügen und sich im workload-set Updatemodus befinden, installiert der restore Befehl die Workload-Set-Version, die beim Wechsel vom Updatemodus für Manifeste in den workload-set Updatemodus eingerichtet wurde.

Wenn Sie eine Workloadsatzversion in der Datei „global.json“ angegeben haben, befinden sich die Workloadbefehle auch dann im workload-set-Modus, wenn Sie den Befehl config nicht ausgeführt oder nicht --version verwendet haben. Die Datei „global.json“ setzt dies außer Kraft. Um in diesem Fall die --version-Option zu verwenden, führen Sie den Befehl außerhalb des Pfads aus, unter dem sich die Datei „global.json“ befindet.

Wenn Sie die Workload-Set-Version in global.json nicht angeben, können Sie die --version Option mit dem restore Befehl verwenden. In diesem Fall wählt der Befehl restore den workload-set-Updatemodus aus, bevor Workloads in der angegebenen Workloadsatzversion wiederhergestellt werden.

Im Manifestupdatemodus installiert restore Workloads oder aktualisiert sie auf die neueste Version der einzelnen Workloads.

Überprüfen des Updatemodus und der Version

Um den aktuellen Updatemodus anzuzeigen, führen Sie den config-Befehl mit der Option --update-mode ohne Argument aus. Der Modus ist entweder workload-set oder manifests. Zum Beispiel:

dotnet workload config --update-mode
workload-set

Führen Sie dotnet workload --version aus, um die aktuelle Workloadsatzversion anzuzeigen. Wenn ein Workloadsatz installiert ist, wird eine Version wie 9.0.100-preview.7.24414.1 oder 8.0.402 angezeigt. Zum Beispiel:

dotnet workload --version
9.0.100-preview.7.24414.1

Im Manifestmodus (oder wenn die Workloadsatzversion nach dem Wechsel zum workload-set-Updatemodus noch nicht eingerichtet wurde) wird eine Version im Format <feature band>-manifests.<hash> angezeigt. Zum Beispiel:

dotnet workload --version
9.0.100-manifests.cf958b56

Auswählen einer Workloadsatzversion

Workloadsätze werden mit jedem Release des .NET SDK unter der Paket-ID Microsoft.NET.Workloads.<feature band> auf „nuget.org“ veröffentlicht. Für eine stabile Version des SDK gibt es immer eine übereinstimmende Workload-Set-Version. 8.0.400 SDK kann also einen 8.0.400-Workloadsatz installieren, und 401 kann einen 401-Satz installieren. Im Allgemeinen wird empfohlen, den übereinstimmenden Workloadsatz für ein stabiles SDK zu installieren.

Suchen Sie bei Vorschauversionen die entsprechende Workloadsatzversion auf der Registerkarte „Infodatei“ des Pakets. Weitere Informationen finden Sie beispielsweise auf der Registerkarte „Infodatei“ für das .NET 9 Preview 7-Paket.

In Zukunft können Sie eine Liste der Workload-Set-Versionen und deren Inhalt anzeigen.

Ignorieren von Workloadsätzen

Um die in den konfigurierten Feeds verfügbare neueste Version der einzelnen Workloads zu installieren oder auf sie zu aktualisieren, wählen Sie den Manifestupdatemodus aus und verwenden ihn, indem Sie den Workloadbefehl config ausführen:

dotnet workload config --update-mode manifests

Im .NET 8.0.4xx SDK ist der Manifestmodus die Standardeinstellung. In dieser Version müssen Sie den Manifestmodus nur explizit auswählen, wenn Sie den Updatemodus zuvor explizit ausgewählt haben workload-set .