Aktualizace na .NET.NET Aspire 9.0
.NET .NET Aspire 9.0 je nyní obecně dostupná. V tomto článku se dozvíte, jak aktualizovat stávající projekty .NET Aspire 8.x na .NET Aspire 9.0. Existuje několik způsobů, jak aktualizovat vaše projekty na verzi .NET.NET Aspire 9.0:
- Ručně upgradujte projekty na .NET.NET Aspire 9.0.
- Pomocí nástroje Upgrade Assistant upgradujte projekty na .NET.NET Aspire 9.0.
Spropitné
Pokud s .NET.NET Aspirezačínáte, není důvod nic upgradovat. Další informace naleznete v tématu .NET.NET Aspire nastavení a nástroje.
Požadavky
Před upgradem projektů na .NET.NET Aspire 9.0 se ujistěte, že máte následující požadavky:
- Nainstalujte nejnovější nástroje.
- .NETsady .NET Aspire SDK .
Poznámka
Nebojte se odinstalovat .NET.NET Aspire úlohu, protože ji už nebudete potřebovat.
dotnet workload uninstall aspire
Další informace viz dotnet workload odinstalace.
Pokud úlohu .NET.NET Aspire neodinstalujete a používáte novou sadu .NET.NET Aspire SDK a šablony, uvidíte šablony .NET Aspire 8.0 i .NET Aspire 9.0.
Ruční upgrade na .NET.NET Aspire 9.0
Pokud chcete projekty upgradovat na .NET.NET Aspire 9.0, musíte aktualizovat soubory projektu. Následující kroky vás provedou procesem:
- Upravte projektový soubor hostitele aplikace tak, aby používal SDK verzi 9.0 .NET.NET Aspire (
Aspire.AppHost.Sdk
). - Aktualizujte balíčky NuGet v souborech projektu na nejnovější verze.
- Upravte soubor Program.cs tak, aby používal nová rozhraní API, a odeberte všechna zastaralá rozhraní API.
Úprava souboru projektu hostitele aplikace
Pokud chcete upgradovat projekt hostitele aplikace na .NET.NET Aspire 9.0, musíte aktualizovat soubor projektu tak, aby používal nový 📦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>
Volitelně upgradujte moniker cílového frameworku (TFM)
.NET Aspire 9.0 běží na .NET 9.0, ale můžete ho spustit také na .NET 8.0. Jinými slovy, jenom proto, že používáte sadu .NET Aspire SDK a odkazujete na balíčky verze 9.0, můžete stále cílit na .NET 8.0. Pokud chcete spustit projekt .NET Aspire 9.0 na .NET 9.0, musíte aktualizovat vlastnost TargetFramework
v souboru projektu:
<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>
Další informace o TFM naleznete v tématu Cílové architektury v projektech ve stylu sady SDK: Nejnovější verze.
Celkové rozdíly mezi projektem hostitele aplikace
Pokud jste postupovali podle všech předchozích kroků, soubor projektu hostitele aplikace by měl vypadat takto:
<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>
Změny zahrnují přidání Aspire.AppHost.Sdk
, aktualizaci vlastnosti TargetFramework
na net9.0
a aktualizaci balíčku Aspire.Hosting.AppHost
na verzi 9.0.0
.
Upravte soubor Program.cs
Při zavedení .NET.NET Aspire 9.0 existují některé změny narušující kompatibilitu. Některá rozhraní API byla původně označena jako experimentální (s ExperimentalAttribute) a nyní se odeberou, zatímco jiná rozhraní API jsou teď přiřazovat jako ObsoleteAttribute s podrobnostmi o nových náhradních rozhraních API. Musíte upravit soubor Program.cs (a případně další dotčená rozhraní API) k použití nových rozhraní API. Pokud k upgradu projektů používáte Pomocníka pro upgrade, ve většině případů automaticky upraví váš Program.cs soubor.
Úplný seznam zásadních změn v .NET.NET Aspire 9.0 naleznete v tématu Zásadní změny v .NET.NET Aspire 9.0.
Použití Pomocníka pro upgrade
Pomocník pro upgrade je nástroj, který pomáhá upgradovat cílené projekty na nejnovější verzi. Pokud s Pomocníkem pro upgrade ještě začínáte, můžete si vybrat ze dvou způsobů:
- rozšíření verze Visual Studio.
- .NETglobální verze nástroje rozhraní příkazového řádku .
Bez ohledu na instalaci Pomocníka pro upgrade ho můžete použít k upgradu projektů .NET Aspire 8.x na .NET Aspire 9.0.
Pokud chcete upgradovat projekt hostitele aplikace .NET Aspire na .NET Aspire 9.0 pomocí Visual Studio, klikněte pravým tlačítkem myši na projekt v Průzkumníka řešení a vyberte Aktualizovat.
Důležitý
Pokud pomocník s upgradem ještě není nainstalovaný, zobrazí se výzva k jeho instalaci.
Pomocník pro upgrade zobrazí uvítací balíček. Vyberte možnost upgradu Aspire:
Když je vybrána možnost upgradu Aspire, Asistent pro upgrade zobrazí možné cílové komponenty pro upgrade. Nechejte zaškrtnuté všechny možnosti a vyberte Vylepšit výběr:
Nakonec po výběru součástí, které se mají upgradovat, zobrazí Pomocník pro upgrade výsledky procesu upgradu. Pokud vše proběhlo úspěšně, zobrazí se vedle každé komponenty zelené značky zaškrtnutí:
Pokud chcete upgradovat projekt hostitele aplikace .NET.NET Aspire, ujistěte se, že jste nainstalovali rozhraní příkazového řádku Pomocníka pro upgrade. Otevřete terminálovou relaci v kořenovém adresáři souboru projektu hostitele aplikace .NET.NET Aspire, a spusťte následující příkaz:
upgrade-assistant upgrade
Výstup je interaktivní a očekává se, že vyberete typ upgradu. Zvolte možnost Aspire upgradů:
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
Pomocí klávesnice se můžete pohybovat nahoru ↑ nebo dolů ↓a vybrat možnost upgradu Aspire. Pomocník s upgradem zobrazí výzvu k konečnému potvrzení. Pokud chcete pokračovat v upgradu, zadejte Y:
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):
Po dokončení procesu upgradu zobrazí Pomocník pro upgrade výsledky procesu upgradu:
Finalizing operation...
Complete: 3 succeeded, 0 failed, 7 skipped.
Aktualizace balíčků NuGet
Pokud chcete využít nejnovější aktualizace v řešení .NET.NET Aspire, aktualizujte všechny balíčky NuGet na verzi 9.0.0
.
Pokud chcete aktualizovat projekt hostitele aplikace, pomocí následujícího příkazu rozhraní příkazového řádku .NET aktualizujte balíček Aspire.Hosting.AppHost
na verzi 9.0.0
:
dotnet add package Aspire.Hosting.AppHost --version 9.0.0
Pokud již odkaz na balíček existuje, příkaz dotnet add package
aktualizuje odkaz na zadanou verzi. Pro další informace navštivte dotnet add package.
Když je projekt hostitele aplikace aktualizovaný, měl by soubor projektu vypadat takto:
<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>
Spropitné
Balíčky NuGet v ostatních projektech budete chtít aktualizovat také na nejnovější verze.
Ověřte upgrade
Stejně jako u jakéhokoli upgradu zajistěte, aby aplikace běžela podle očekávání a aby všechny testy prošly. Sestavte řešení a v okně výstupu vyhledejte návrhy, upozornění nebo chyby – vyřešte všechno, co předtím nebylo problém. Pokud narazíte na nějaké problémy, dejte nám vědět nahlášením GitHub problému.