Actualización a .NET.NET Aspire 9.0
.NET .NET Aspire 9.0 ya está disponible con carácter general. En este artículo, aprenderá los pasos necesarios para actualizar los proyectos de .NET Aspire 8.x existentes a .NET Aspire 9.0. Hay varias maneras de actualizar los proyectos a .NET.NET Aspire 9.0:
- Actualice manualmente los proyectos a .NET.NET Aspire 9.0.
- Usa el Asistente para actualizaciones para actualizar tus proyectos a .NET.NET Aspire 9.0.
Propina
Si no está familiarizado con .NET.NET Aspire, no hay ninguna razón para actualizar nada. Para obtener más información, consulte .NET.NET Aspire configuración y herramientas.
Prerrequisitos
Antes de actualizar los proyectos a .NET.NET Aspire 9.0, asegúrese de que tiene los siguientes requisitos previos:
Nota
No dude en desinstalar la carga de trabajo de .NET.NET Aspire, ya que ya no la necesitará.
dotnet workload uninstall aspire
Para obtener más información, consulte desinstalar la carga de trabajo de dotnet.
Si no desinstala la carga de trabajo de .NET.NET Aspire y está usando el nuevo SDK de .NET.NET Aspire y las plantillas de, verá tanto plantillas de .NET Aspire 8.0 como de .NET Aspire 9.0.
Actualizar manualmente a .NET.NET Aspire 9.0
Para actualizar los proyectos a .NET.NET Aspire 9.0, debe actualizar los archivos del proyecto. Los pasos siguientes le guían a través del proceso:
- Edite el archivo de proyecto host de la aplicación de
para usar el nuevo SDK de 9.0 ( ). - Actualice los paquetes NuGet de los archivos del proyecto a las versiones más recientes.
- Ajuste el archivo de Program.cs para usar las nuevas API y quite las API obsoletas.
Edite el archivo de proyecto del host de la aplicación
Para actualizar el proyecto host de la aplicación a .NET.NET Aspire 9.0, debe actualizar el archivo de proyecto para usar el nuevo 📦Aspire. AppHost.Sdk:
<Project Sdk="Microsoft.NET.Sdk">
+ <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsAspireHost>true</IsAspireHost>
<UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
</ItemGroup>
</Project>
De manera opcional, actualice el identificador del marco de destino (TFM)
.NET Aspire 9.0 se ejecuta en .NET 9.0, pero también puede ejecutarlo en .NET 8.0. En otras palabras, solo porque usa el SDK de .NET Aspire y apunta a los paquetes de la versión 9.0, todavía puede tener como destino .NET 8.0. Si desea ejecutar el proyecto de .NET Aspire 9.0 en .NET 9.0, debe actualizar la propiedad TargetFramework
en el archivo de proyecto:
<Project Sdk="Microsoft.NET.Sdk">
<Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />
<PropertyGroup>
<OutputType>Exe</OutputType>
- <TargetFramework>net8.0</TargetFramework>
+ <TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsAspireHost>true</IsAspireHost>
<UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0" />
</ItemGroup>
</Project>
Para obtener más información sobre los TFM, consulte Plataformas de destino en proyectos de estilo SDK: Versiones más recientes.
Diferencias generales en el proyecto de host de aplicaciones
Si ha seguido todos los pasos anteriores, el archivo de proyecto host de la aplicación debe tener este aspecto:
<Project Sdk="Microsoft.NET.Sdk">
+ <Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />
<PropertyGroup>
<OutputType>Exe</OutputType>
- <TargetFramework>net8.0</TargetFramework>
+ <TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsAspireHost>true</IsAspireHost>
<UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
+ <PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0" />
</ItemGroup>
</Project>
Los cambios incluyen la adición del Aspire.AppHost.Sdk
, la actualización de la propiedad TargetFramework
a net9.0
y la actualización del paquete de Aspire.Hosting.AppHost
a la versión 9.0.0
.
Ajuste el archivo Program.cs
Con la introducción de .NET.NET Aspire 9.0, hay algunos cambios disruptivos . Algunas API se marcaron originalmente como experimentales (con la ExperimentalAttribute) y ahora se quitan, mientras que otras API ahora se atribuyen como ObsoleteAttribute con detalles sobre las nuevas API de reemplazo. Debe ajustar el archivo de Program.cs (y potencialmente otras API afectadas) para usar las nuevas API. Si usa el Asistente para actualización para actualizar los proyectos, ajusta automáticamente el archivo Program.cs en la mayoría de los casos.
Para obtener la lista completa de cambios importantes en .NET.NET Aspire 9.0, consulte Cambios importantes en .NET.NET Aspire 9.0.
Usar el Asistente para actualización
El Asistente de actualización es una herramienta que ayuda a actualizar los proyectos específicos a la versión más reciente. Si eres nuevo en el Asistente de actualización, puedes elegir entre dos modalidades.
Independientemente de cómo instale el Asistente para actualización, puede usarlo para actualizar los proyectos de .NET Aspire 8.x a .NET Aspire 9.0.
Para actualizar el proyecto host de aplicación de .NET Aspire a .NET Aspire 9.0 con Visual Studio, haga clic con el botón derecho en el proyecto en Explorador de Soluciones y seleccione Actualizar.
Importante
Si el Asistente para mejoras de aún no está instalado, se le pedirá que lo instale.
El Asistente para actualización muestra un paquete de bienvenida. Seleccione la opción de actualizaciones Aspire:
Con la opción de actualizaciones Aspire seleccionada, el Asistente de actualización muestra los componentes de destino de la actualización seleccionables. Deje activadas todas las opciones y seleccione Selección de actualización:
Por último, después de seleccionar los componentes que desea actualizar, el Asistente para actualización muestra los resultados del proceso de actualización. Si todo se realizó correctamente, verá marcas de verificación verdes junto a cada componente:
Para actualizar el proyecto host de la aplicación .NET.NET Aspire, asegúrese de instalar la CLI del Asistente para actualización. Abra una sesión de terminal en el directorio raíz del archivo de proyecto host de aplicación .NET.NET Aspire y ejecute el siguiente comando:
upgrade-assistant upgrade
La salida es interactiva y espera que seleccione el tipo de actualización. Elija la opción de actualizaciones Aspire:
Selected options
────────────────────────────────────────────────────────────────────────────────────
Source project ..\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj
Steps
────────────────────────────────
Source project / Upgrade type
────────────────────────────────
How do you want to upgrade project AspireSample.AppHost?
> Aspire upgrades
Upgrade to latest .NET Aspire version (aspire.latest)
Upgrade project to a newer .NET version
In-place project upgrade (framework.inplace)
NuGet upgrades
NuGet central package management (CPM) (nuget.cpm)
Navigation
Back
Exit
Use el teclado para navegar hacia arriba , o hacia abajo y seleccione la opción Aspire actualizaciones. El Asistente para actualización solicita confirmación final. Escriba Y para continuar con la actualización:
Selected options
────────────────────────────────────────────────────────────────────────────────────
Source project ..\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj
Upgrade type aspire.latest
Steps
──────────────────────────────────────────
Source project / Upgrade type / Upgrade
──────────────────────────────────────────
We have gathered all required options and are ready to do the upgrade. Do you want to continue? [y/n] (y):
Por último, una vez completado el proceso de actualización, el Asistente para actualización muestra los resultados del proceso de actualización:
Finalizing operation...
Complete: 3 succeeded, 0 failed, 7 skipped.
Actualización de los paquetes NuGet
Para aprovechar las actualizaciones más recientes de la solución de .NET.NET Aspire, actualice todos los paquetes NuGet a la versión 9.0.0
.
Para actualizar el proyecto host de la aplicación, use el siguiente comando de la CLI de .NET para actualizar el paquete de Aspire.Hosting.AppHost
a la versión 9.0.0
:
dotnet add package Aspire.Hosting.AppHost --version 9.0.0
Cuando ya existe una referencia de paquete, el comando dotnet add package
actualiza la referencia a la versión especificada. Para más detalles, consulte dotnet add package.
Con el proyecto host de la aplicación actualizado, el archivo del proyecto debe tener este aspecto:
<Project Sdk="Microsoft.NET.Sdk">
<Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsAspireHost>true</IsAspireHost>
<UserSecretsId>0afc20a6-cd99-4bf7-aae1-1359b0d45189</UserSecretsId>
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="Aspire.Hosting.AppHost" Version="8.0.0" />
+ <PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0" />
</ItemGroup>
</Project>
Propina
También querrá actualizar los paquetes NuGet de los otros proyectos a las versiones más recientes.
Comprobación de la actualización
Al igual que con cualquier actualización, asegúrese de que la aplicación se ejecuta según lo previsto y que todas las pruebas superan. Compile la solución y busque sugerencias, advertencias o errores en la ventana de salida: solucione todo lo que no fuera un problema antes. Si tiene algún problema, háganoslo saber presentando un informe de GitHub problema.