Uppgradera till .NET.NET Aspire 9.0
.NET .NET Aspire 9.0 är nu allmänt tillgänglig. I den här artikeln får du lära dig hur du uppdaterar dina befintliga .NET Aspire 8.x-projekt till .NET Aspire 9.0. Det finns några sätt att uppdatera dina projekt till .NET.NET Aspire 9.0:
- Uppgradera projekten manuellt till .NET.NET Aspire 9.0.
- Använd Upgrade Assistant för att uppgradera dina projekt till .NET.NET Aspire 9.0.
Tips
Om du är nybörjare på .NET.NET Aspirefinns det ingen anledning att uppgradera något. För mer information, se .NET.NET Aspire installation och verktyg.
Förutsättningar
Innan du uppgraderar dina projekt till .NET.NET Aspire 9.0 måste du se till att du har följande förutsättningar:
Obs.
Avinstallera gärna .NET.NET Aspire arbetsbelastningen eftersom du inte längre behöver den.
dotnet workload uninstall aspire
För mer information, se avinstallera dotnet-arbetsbelastning.
Om du inte avinstallerar .NET.NET Aspire arbetsbelastningen och du använder den nya .NET.NET Aspire SDK- och mallar visas både .NET Aspire 8.0- och .NET Aspire 9.0-mallar.
Uppgradera manuellt till .NET.NET Aspire 9.0
Om du vill uppgradera dina projekt till .NET.NET Aspire 9.0 måste du uppdatera dina projektfiler. Följande steg vägleder dig genom processen:
- Redigera din appvärd projektfil för att använda den nya .NET.NET Aspire 9.0 SDK (
Aspire.AppHost.Sdk
). - Uppdatera NuGet-paketen i projektfilerna till de senaste versionerna.
- Justera din Program.cs-fil för att använda de nya API:erna och ta bort eventuella föråldrade API:er.
Redigera programvärdprojektfilen
Om du vill uppgradera appvärdprojektet till .NET.NET Aspire 9.0 måste du uppdatera projektfilen så att den använder den nya 📦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>
Du kan också uppgradera målramverkets moniker (TFM)
.NET Aspire 9.0 körs på .NET 9.0, men du kan också köra den på .NET 8.0. Med andra ord, bara för att du använder .NET Aspire SDK och pekar på version 9.0-paket, kan du fortfarande rikta in dig på .NET 8.0. Om du vill köra ditt .NET Aspire 9.0-projekt på .NET 9.0 måste du uppdatera egenskapen TargetFramework
i projektfilen:
<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>
Mer information om TFM:er finns i Målramverk i SDK-liknande projekt: De senaste versionerna.
Övergripande skillnader mellan programvärdprojekt
Om du har följt alla föregående steg bör din appvärdprojektfil se ut så här:
<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>
Ändringarna inkluderar tillägget av Aspire.AppHost.Sdk
, uppdateringen av egenskapen TargetFramework
till net9.0
och uppdateringen av Aspire.Hosting.AppHost
-paketet till version 9.0.0
.
Justera Program.cs-filen
Med introduktionen av .NET.NET Aspire 9.0 finns det några störande ändringar. Vissa API:er markerades ursprungligen som experimentella (med ExperimentalAttribute) och tas nu bort, medan andra API:er nu tillskrivs som ObsoleteAttribute med information om nya ersättnings-API:er. Du måste justera din Program.cs -fil (och potentiellt andra berörda API:er) för att använda de nya API:erna. Om du använder uppgraderingsassistenten för att uppgradera dina projekt justeras din Program.cs fil automatiskt i de flesta fall.
För en fullständig lista över brytändringar i .NET.NET Aspire 9.0, se Brytändringar i .NET.NET Aspire 9.0.
Använda uppgraderingsassistenten
Upgrade Assistant är ett verktyg som hjälper dig att uppgradera målprojekt till den senaste versionen. Om du inte har använt uppgraderingsassistenten tidigare finns det två metoder att välja mellan:
Oavsett hur du installerar uppgraderingsassistenten kan du använda den för att uppgradera dina .NET Aspire 8.x-projekt till .NET Aspire 9.0.
Om du vill uppgradera .NET Aspire appvärdprojektet till .NET Aspire 9.0 med Visual Studiohögerklickar du på projektet i Solution Explorer och väljer Uppgradera.
Viktig
Om Uppgraderingsassistenten inte redan är installerad uppmanas du att installera den.
Uppgraderingsassistenten visar ett välkomstpaket. Välj alternativet Aspire uppgraderingar:
Med alternativet Aspire uppgraderingar valt visar Uppgraderingsassistenten de valbara uppgraderingsmålkomponenterna. Låt alla alternativ vara markerade och välj Uppgraderingsval:
När du har valt de komponenter som ska uppgraderas visar uppgraderingsassistenten slutligen resultatet av uppgraderingsprocessen. Om allt lyckades visas gröna bockmarkeringar bredvid varje komponent:
Om du vill uppgradera .NET.NET Aspire appvärdprojektet, se till att du har installerat Uppgraderingsassistentens CLI. Öppna en terminalsession i rotkatalogen för .NET.NET Aspire programvärdprojektfilen och kör följande kommando:
upgrade-assistant upgrade
Utdata är interaktiva och du förväntas välja uppgraderingstyp. Välj alternativet Aspire uppgradering:
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
Använd tangentbordet för att navigera upp ↑ eller nedåt ↓och välj alternativet Aspire uppgraderingar. Uppgraderingsassistenten uppmanar till slutlig bekräftelse. Ange Y- för att fortsätta med uppgraderingen:
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):
När uppgraderingsprocessen är klar visar uppgraderingsassistenten slutligen resultatet av uppgraderingsprocessen:
Finalizing operation...
Complete: 3 succeeded, 0 failed, 7 skipped.
Uppdatera NuGet-paketen
Om du vill dra nytta av de senaste uppdateringarna i din .NET.NET Aspire-lösning uppdaterar du alla NuGet-paket till version 9.0.0
.
Om du vill uppdatera appvärdprojektet använder du följande cli-kommando .NET för att uppdatera Aspire.Hosting.AppHost
-paketet till version 9.0.0
:
dotnet add package Aspire.Hosting.AppHost --version 9.0.0
När det redan finns en paketreferens uppdaterar kommandot dotnet add package
referensen till den angivna versionen. Mer information finns i dotnet add package.
När appvärdprojektet har uppdaterats bör projektfilen se ut så här:
<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>
Tips
Du vill också uppdatera NuGet-paketen i dina andra projekt till de senaste versionerna.
Verifiera uppgraderingen
Precis som med alla uppgraderingar kontrollerar du att appen körs som förväntat och att alla tester godkänns. Skapa lösningen och leta efter förslag, varningar eller fel i utdatafönstret – åtgärda allt som inte var ett problem tidigare. Om du stöter på problem kan du meddela oss genom att rapportera ett GitHub ärende.
.NET Aspire