Compartir a través de


Conjuntos de cargas de trabajo de SDK de .NET

La característica conjuntos de cargas de trabajo proporciona un número de versión que representa un grupo de cargas de trabajo de SDK de .NET. Los comandos de instalación, actualización y restauración usan este número en el modo de actualización del conjunto de cargas de trabajo para proporcionar las siguientes ventajas:

  • Puede controlar la cadencia del cambio para las versiones de carga de trabajo instaladas. El modo alternativo de operación sin usar conjuntos de cargas de trabajo se denomina modo de actualización de manifiestos sueltos. En este modo, las cargas de trabajo se actualizan automáticamente a medida que se lanzan nuevas versiones de cargas de trabajo individuales en cualquier fuente NuGet configurada. En el modo de actualización del workload-set, las cargas de trabajo permanecen en una versión específica del conjunto de cargas de trabajo hasta que se cambia explícitamente esa versión.
  • Puede instalar y actualizar una combinación de versiones de carga de trabajo que se envían al mismo tiempo y que se sabe que funcionan conjuntamente.
  • Puede asegurarse de que todos los miembros del equipo siempre trabajan en las mismas versiones de carga de trabajo.
  • No tiene que usar un archivo de reversión para especificar en qué versión de carga de trabajo desea estar.

A continuación, puede ver algunas de las maneras en las que puede usar los conjuntos de cargas de trabajo.

  • "Ancle" el comando install a una versión específica del conjunto de cargas de trabajo.
  • Actualice las cargas de trabajo instaladas a la versión más reciente disponible del conjunto de cargas de trabajo.
  • Actualice a una versión especificada del conjunto de cargas de trabajo.
  • Especifique la versión del conjunto de cargas de trabajo en global.json.
  • Compruebe el modo de actualización actual y la versión del conjunto de cargas de trabajo.

Además. todavía puede optar por instalar, actualizar o restaurar a la versión más reciente de cada carga de trabajo individual, ignorando los conjuntos de cargas de trabajo.

Requisitos previos

  • SDK de .NET 8.0.400 o posterior.

    En el SDK 8.0.400, los comandos dotnet workload se encuentran en modo de actualización del conjunto de cargas de trabajo solo cuando se selecciona explícitamente.

"Ancle" el comando de instalación

Un comando dotnet workload install con la opción --version "ancla" el comando install en modo de actualización workload-set con la versión especificada del conjunto de cargas de trabajo. El comando ya no instala automáticamente la carga de trabajo más reciente basada en manifiestos sueltos.

Para "anclar" el comando install:

  1. Elija una versión del conjunto de cargas de trabajo. Por ejemplo, 9.0.100-preview.7.24414.1.

  2. Elección de las cargas de trabajo. Por ejemplo, aspire.

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

    Cuando se ejecuta este comando:

    • Selecciona el modo de actualización workload-set si aún no está seleccionado.
    • Obtiene el conjunto de cargas de trabajo que tiene la versión especificada.
    • En el conjunto de cargas de trabajo, obtiene la versión del manifiesto de la carga de trabajo especificada.
    • Instala la versión del manifiesto de la carga de trabajo.
    • Permanece en modo de actualización workload-set cuando haya terminado.
  4. Elija otra carga de trabajo para instalar, como maui-ios.

  5. dotnet workload install maui-ios
    

    Este comando instala la maui-ios carga de trabajo mediante la versión de carga de trabajo de la versión 9.0.100-preview.7.24414.1del conjunto de cargas de trabajo, ya que el ejemplo de comando anterior install ancló ese conjunto de cargas de trabajo.

Usando --version con install o update, se ancla install a la versión especificada, pero update solo está configurado para el modo de actualización workload-set, no para una versión específica del conjunto de cargas de trabajo. Si después ejecuta dotnet workload update sin la opción --version, el comando update:

  • Actualiza las cargas de trabajo a la versión más reciente disponible del conjunto de cargas de trabajo.
  • "Desanclar" el comando install.
  • Permanece en modo de actualización workload-set.

Actualización mediante el conjunto de cargas de trabajo más reciente

Para actualizar las cargas de trabajo instaladas a la versión más reciente del conjunto de cargas de trabajo disponible en las fuentes configuradas, ejecute los siguientes comandos:

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

    El comando anterior solo es necesario si actualmente está en modo de actualización de manifiestos. Si no lo sabe, compruebe el modo de actualización actual.

  2. dotnet workload update
    

    En el modo de actualización workload-set, este comando actualiza las cargas de trabajo a la versión más reciente del conjunto de cargas de trabajo, a menos que haya especificado la versión del conjunto de cargas de trabajo en global.json.

Actualice a una versión del conjunto de cargas de trabajo.

Para especificar una versión del conjunto de cargas de trabajo a la que actualizar cuando no se especifica en global.json, use la opción --version del comando update:

  1. Elija una versión del conjunto de cargas de trabajo. Por ejemplo, 8.0.400.

  2. dotnet workload update --version 8.0.400
    

    workload-set se seleccionará el modo de actualización si aún no se ha seleccionado.

Uso de global.json para la versión del conjunto de cargas de trabajo

Usar un archivo global.json para especificar la versión del conjunto de cargas de trabajo para un repositorio:

  1. Elija una versión del conjunto de cargas de trabajo. Por ejemplo, 9.0.100-preview.7.24414.1.

  2. Cree un archivo global.json similar al ejemplo siguiente:

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

Con el directorio actual en el mismo repositorio y la CLI en modo de actualización workload-set, los comandos install, update y restore instalan cargas de trabajo para la versión especificada del conjunto de cargas de trabajo. Si no tiene un archivo global.json y está en workload-set modo de actualización, el restore comando instala la versión del conjunto de cargas de trabajo que se estableció al cambiar del modo de actualización de manifiestos al workload-set modo de actualización.

Si tiene una versión de conjunto de cargas de trabajo en el archivo global.json, los comandos de carga de trabajo están en modo workload-set aunque no haya ejecutado el comando config o usado --version. El archivo global.json los invalida. Para usar la opción --version en ese caso, ejecute el comando fuera de la ruta de acceso que contiene el archivo global.json.

Si no especifica la versión del conjunto de cargas de trabajo en global.json, puede usar la --version opción con el restore comando . En ese caso, el comando restore selecciona el modo de actualización workload-set antes de restaurar las cargas de trabajo a la versión especificada del conjunto de cargas de trabajo.

En el modo de actualización de manifiestos, restore instala o actualiza las cargas de trabajo a la versión más reciente de cada carga de trabajo individual.

Comprobar el modo de actualización y la versión

Para ver el modo de actualización actual, ejecute el comando config con la opción --update-mode sin un argumento. El modo es workload-set o manifests. Por ejemplo:

dotnet workload config --update-mode
workload-set

Para ver la versión actual del conjunto de cargas de trabajo, ejecute dotnet workload --version. Si se instala un conjunto de cargas de trabajo, verá una versión como 9.0.100-preview.7.24414.1 u 8.0.402. Por ejemplo:

dotnet workload --version
9.0.100-preview.7.24414.1

En el modo de manifiestos, o si la versión del conjunto de cargas de trabajo aún no se ha establecido después de cambiar al modo de actualización workload-set, verá una versión en forma de <feature band>-manifests.<hash>. Por ejemplo:

dotnet workload --version
9.0.100-manifests.cf958b56

Elija una versión del conjunto de cargas de trabajo

Los conjuntos de cargas de trabajo se publican en nuget.org con cada versión de SDK de .NET, en el ID de paquete Microsoft.NET.Workloads.<feature band>. Para una versión estable del SDK, siempre hay una versión coincidente del conjunto de cargas de trabajo. Por lo tanto, el SDK 8.0.400 puede instalar un conjunto de cargas de trabajo 8.0.400 y 401 puede instalar un conjunto 401. En general, se recomienda instalar el conjunto de cargas de trabajo coincidentes para un SDK estable.

Para las versiones preliminares, busque la versión correspondiente del conjunto de cargas de trabajo en la pestaña LÉAME del paquete. Por ejemplo, consulte la pestaña LÉAME del paquete .NET 9 Preview 7.

En el futuro, podrá ver una lista de versiones del conjunto de cargas de trabajo y lo que contienen.

Omitir conjuntos de cargas de trabajo

Para instalar o actualizar a la versión más reciente de cada carga de trabajo individual disponible en las fuentes configuradas, seleccione y use el modo de actualización de manifiestos mediante la ejecución del comando de carga de trabajo config:

dotnet workload config --update-mode manifests

En el SDK de .NET 8.0.4xx, el modo de manifiesto es el valor predeterminado. En esta versión, debe seleccionar el modo de manifiesto explícitamente solo si seleccionó workload-set explícitamente el modo de actualización anteriormente.