Ensembles de charges de travail du SDK .NET
La fonctionnalité ensembles de charges de travail fournit un numéro de version qui représente un groupe de charges de travail du SDK .NET. Les commandes install, update, et restore utilisent ce numéro en mode de mise à jour d’ensemble de charges de travail pour offrir les avantages suivants :
- Vous contrôlez la cadence des modifications des versions des charges de travail installées. Le mode de fonctionnement alternatif sans utiliser d’ensembles de charges de travail est appelé mode de mise à jour de manifestes libres. Dans ce mode, les charges de travail sont mises à jour automatiquement lorsque de nouvelles versions de charges de travail individuelles sont publiées sur des flux NuGet configurés. En mode de mise à jour
workload-set
, les charges de travail restent à une version spécifique de l’ensemble de charges de travail jusqu’à ce que vous changiez explicitement cette version. - Vous pouvez installer et mettre à jour une combinaison de versions de charges de travail qui sont livrées en même temps et qui sont connues pour fonctionner ensemble.
- Vous pouvez vous assurer que tous les membres de votre équipe travaillent toujours sur les mêmes versions de charges de travail.
- Vous n’avez pas besoin d’utiliser un fichier de retour en arrière pour spécifier la version de la charge de travail que vous souhaitez utiliser.
Voici quelques façons d’utiliser les ensembles de charges de travail :
- « Épingler » la commande
install
à une version spécifique de l’ensemble de charges de travail. - Mettre à jour les charges de travail installées à la dernière version disponible de l’ensemble de charges de travail.
- Mettre à jour vers une version spécifiée de l’ensemble de charges de travail.
- Spécifier la version de l’ensemble de charges de travail dans global.json.
- Vérifier votre mode de mise à jour actuel et la version de l’ensemble de charges de travail.
Et vous pouvez toujours choisir d’installer, de mettre à jour ou de restaurer à la dernière version de chaque charge de travail individuelle, en ignorant les ensembles de charges de travail.
Prérequis
.NET SDK 8.0.400 ou version ultérieure.
Dans le SDK 8.0.400, les commandes
dotnet workload
sont en mode de mise à jour d’ensemble de charges de travail uniquement lorsqu’il est explicitement sélectionné.
« Épingler » la commande install
Une commande dotnet workload install
avec l’option --version
« épingle » la commande install
en mode workload-set
de mise à jour avec la version spécifiée de l’ensemble de charges de travail.
La commande n’installe plus automatiquement la charge de travail la plus récente en se basant sur les manifestes libres.
Pour « épingler » la commande install
:
Choisir une version de l’ensemble de charges de travail. Par exemple :
9.0.100-preview.7.24414.1
.Choisissez une charge de travail. Par exemple :
aspire
.-
dotnet workload install aspire --version 9.0.100-preview.7.24414.1
Lorsque cette commande est exécutée :
- Elle sélectionne le mode
workload-set
de mise à jour si ce n’est pas déjà fait. - Elle obtient l’ensemble de charges de travail qui a la version spécifiée.
- À partir de l’ensemble de charges de travail, elle obtient la version du manifeste de la charge de travail spécifiée.
- Elle installe la version du manifeste de la charge de travail.
- Elle reste en mode
workload-set
de mise à jour une fois terminée.
- Elle sélectionne le mode
Choisissez une autre charge de travail à installer, comme
maui-ios
.-
dotnet workload install maui-ios
Cette commande installe la charge de travail
maui-ios
en utilisant la version de la charge de travail provenant de la version9.0.100-preview.7.24414.1
de l’ensemble de charges de travail, puisque l’exemple de commandeinstall
précédent a épinglé cet ensemble de charges de travail.
Utiliser --version
soit avec install
soit avec update
épingle install
à la version spécifiée, mais update
est uniquement configuré pour le mode workload-set
de mise à jour, et non pour une version spécifique de l’ensemble de charges de travail. Si vous exécutez ensuite dotnet workload update
sans l’option --version
, la commande update
:
- Met à jour les charges de travail vers la dernière version disponible de l’ensemble de charges de travail.
- « Désépingle » la commande
install
. - Reste en mode de mise à jour
workload-set
.
Mise à jour à l’aide du dernier ensemble de charges de travail
Pour mettre à jour les charges de travail installées vers la dernière version de l’ensemble de charges de travail disponible sur les flux configurés, exécutez les commandes suivantes :
-
dotnet workload config --update-mode workload-set
La commande précédente est nécessaire uniquement si vous êtes actuellement en mode de mise à jour de manifestes. Si vous ne savez pas, vérifiez le mode de mise à jour actuel.
-
dotnet workload update
En mode de mise à jour
workload-set
, cette commande met à jour les charges de travail vers la dernière version de l’ensemble de charges de travail, sauf si vous avez spécifié la version de l’ensemble de charges de travail dans global.json.
Mettre à jour vers une version de l’ensemble de charges de travail
Pour spécifier une version de l’ensemble de charges de travail à mettre à jour lorsque vous ne la spécifiez pas dans global.json, utilisez l’option --version
de la commande update
:
Choisir une version de l’ensemble de charges de travail. Par exemple :
8.0.400
.-
dotnet workload update --version 8.0.400
Le mode workload-set
de mise à jour sera sélectionné s’il ne l’était pas déjà.
Utiliser global.json pour la version de l’ensemble de charges de travail
Pour utiliser un fichier global.json
afin de spécifier la version de l’ensemble de charges de travail pour un référentiel :
Choisir une version de l’ensemble de charges de travail. Par exemple :
9.0.100-preview.7.24414.1
.Créez un fichier
global.json
qui ressemble à l’exemple suivant :{ "sdk": { "workloadVersion": "9.0.100-preview.7.24414.1" } }
Avec le répertoire courant dans le même référentiel et la CLI en mode workload-set
de mise à jour, les commandes install
, update
et restore
installent les charges de travail pour la version spécifiée de l’ensemble de charges de travail. Si vous n’avez pas de fichier global.json, et que vous êtes en mode workload-set
de mise à jour, la commande restore
installe la version de l’ensemble de charges de travail qui a été établie lorsque vous êtes passé du mode de mise à jour de manifestes au mode workload-set
de mise à jour.
Si vous avez une version de l’ensemble de charges de travail dans le fichier global.json, les commandes de charge de travail sont en mode workload-set
même si vous n’avez pas exécuté la commande config
ou utilisé --version
. Le fichier global.json remplace ceux-ci.
Pour utiliser l’option --version
dans ce cas, exécutez la commande en dehors du chemin contenant le fichier global.json.
Si vous ne spécifiez pas la version de l’ensemble de charges de travail dans global.json, vous pouvez utiliser l’option --version
avec la commande restore
. Dans ce cas, la commande restore
sélectionne le mode workload-set
de mise à jour avant de restaurer les charges de travail à la version spécifiée de l’ensemble de charges de travail.
En mode de mise à jour de manifestes, restore
installe ou met à jour les charges de travail vers la dernière version de chaque charge de travail individuelle.
Vérifier le mode de mise à jour et la version
Pour voir le mode de mise à jour actuel, exécutez la commande config
avec l’option --update-mode
sans argument. Le mode est soit workload-setor
manifests. Par exemple :
dotnet workload config --update-mode
workload-set
Pour voir la version actuelle de l’ensemble de charges de travail, exécutez dotnet workload --version
. Si un ensemble de charges de travail est installé, vous verrez une version telle que 9.0.100-preview.7.24414.1 ou 8.0.402. Par exemple :
dotnet workload --version
9.0.100-preview.7.24414.1
En mode manifestes, ou si la version de l’ensemble de charges de travail n’est pas encore établie après le passage au mode workload-set
de mise à jour, vous verrez une version sous la forme de <feature band>-manifests.<hash>
. Par exemple :
dotnet workload --version
9.0.100-manifests.cf958b56
Choisir une version de l’ensemble de charges de travail
Les ensembles de charges de travail sont publiés sur nuget.org avec chaque version du SDK .NET, sous l’ID de package Microsoft.NET.Workloads.<feature band>
. Pour une version stable du SDK, nous prévoyons toujours d’avoir une version d’ensemble de charges de travail correspondante. Ainsi, le SDK 8.0.400 peut installer un ensemble de charges de travail 8.0.400, 401 peut installer un ensemble 401. En général, nous vous recommandons d’installer l’ensemble de charges de travail correspondant pour un SDK stable.
Pour les versions préliminaires, trouvez la version correspondante de l’ensemble de charges de travail dans l’onglet README du package. Par exemple, veuillez consulter l’onglet README pour le package .NET 9 Preview 7.
Il s’agit d’une version préliminaire. À l’avenir, nous vous proposerons des moyens de lister les versions des ensembles de charges de travail pour voir ce qui est disponible et ce qu’elles contiennent.
Ignorer les ensembles de charges de travail
Pour installer ou mettre à jour à la dernière version de chaque charge de travail individuelle disponible sur les flux configurés, sélectionnez et utilisez le mode de mise à jour de manifestes en exécutant la commande de charge de travail config
:
dotnet workload config --update-mode manifests
Dans le SDK .NET 8.0.4xx, le mode manifestes est le mode par défaut. Vous devez sélectionner le mode manifestes explicitement uniquement si vous avez précédemment sélectionné explicitement le mode de mise à jour workload-set
.