Přehled pomocníka pro upgrade platformy .NET
Nové verze .NET se vydávají v průběhu roku s hlavní verzí jednou za rok. Pomocník pro upgrade platformy .NET vám pomůže s upgradem aplikací z předchozích verzí rozhraní .NET, .NET Core a .NET Framework na nejnovější verzi.
Pomocník pro upgrade .NET je rozšíření sady Visual Studio a nástroj příkazového řádku, který je navržený tak, aby pomohl s upgradem aplikací na nejnovější verzi .NET.
Problémy související s pomocníkem pro upgrade platformy .NET lze v sadě Visual Studio vytvořit výběrem možnosti Odeslat>zpětnou vazbu>o problému.
Instalace Pomocníka pro upgrade
Pomocníka pro upgrade platformy .NET je možné nainstalovat jako rozšíření sady Visual Studio nebo jako nástroj příkazového řádku .NET. Další informace naleznete v tématu Instalace Pomocníka pro upgrade platformy .NET.
Podporované jazyky
Podporují se následující jazyky kódu:
- C#
- Visual Basic
Podporované projekty
Podporují se následující typy projektů:
- ASP.NET
- Azure Functions
- Windows Presentation Foundation
- Windows Forms
- Knihovny tříd
- Aplikace konzoly
- UpW nativní pro .NET
- Xamarin Forms
- .NET MAUI
Cesty upgradu
Podporují se tyto možnosti upgradu:
- .NET Framework do .NET
- .NET Core do .NET
- UPW na WinUI 3
- Předchozí verze .NET na nejnovější verzi .NET
- Izolované služby Azure Functions v1–v3 až v4
- Xamarin Forms do .NET MAUI
- Transformace souborů XAML podporují pouze upgrade oborů názvů. Pro komplexnější transformace použijte Visual Studio 2022 verze 17.6 nebo novější.
Upgrade pomocí rozšíření sady Visual Studio
Po instalaci rozšíření .NET Upgrade Assistant klikněte pravým tlačítkem myši na projekt v okně Průzkumník řešení a vyberte Upgradovat.
Upozornění
Pokud nepoužíváte správu zdrojového kódu, nezapomeňte své projekty před upgradem zálohovat.
Otevře se karta, která poskytuje různé styly upgradu na základě typu projektu:
Místní upgrade projektu
Tato možnost upgraduje projekt bez vytvoření kopie.
Souběžný upgrade projektu
Zkopíruje projekt a upgraduje kopii a ponechá původní projekt sám.
Přírůstkové souběžné
Dobrou volbou pro složité webové aplikace. Upgrade z ASP.NET na ASP.NET Core vyžaduje poměrně hodně práce a občas ruční refaktoring. Tento režim umístí projekt .NET vedle existujícího projektu .NET Framework a směruje koncové body implementované v projektu .NET, zatímco všechna ostatní volání se odesílají do aplikace .NET Framework.
Tento režim umožňuje pomalu upgradovat ASP.NET nebo knihovnu aplikace kus po kusu.
Po upgradu aplikace se zobrazí obrazovka stavu, která zobrazuje všechny artefakty související s vaším projektem přidruženým k upgradu. Každý artefakt upgradu je možné rozbalit a přečíst si další informace o stavu. Následující seznam popisuje ikony stavu:
- Plná zelená značka zaškrtnutí: Artefakt byl upgradován a úspěšně dokončen.
- Nezaplněná zelená značka zaškrtnutí: Nástroj nenalezl nic o artefaktu, který se má upgradovat.
- Žluté upozornění: Artefakt byl upgradován, ale měli byste zvážit důležité informace.
- Červený X: Artefakt byl upgradován, ale upgrade se nezdařil.
Kromě toho se akce, které pomocník s upgradem provedl, protokolují do okna Výstup ve zdroji Pomocníka pro upgrade, jak je znázorněno na následujícím obrázku:
Po upgradu projektu ho budete muset důkladně otestovat.
Upgrade pomocí nástroje rozhraní příkazového řádku
Po instalaci nástroje .NET Upgrade Assistant CLI otevřete okno terminálu a přejděte do adresáře, který obsahuje projekt, který chcete upgradovat. Pomocí příkazu upgrade-assistant --help
můžete zobrazit dostupné možnosti, které poskytuje rozhraní příkazového řádku.
Upozornění
Pokud nepoužíváte správu zdrojového kódu, nezapomeňte své projekty před upgradem zálohovat.
Spusťte nástroj pomocí upgrade-assistant upgrade
příkazu, jsou uvedeny všechny projekty z aktuální složky a níže. Nástroj ROZHRANÍ příkazového řádku poskytuje interaktivní způsob výběru projektu, který se má upgradovat. Pomocí kláves se šipkami vyberte položku a stisknutím klávesy Enter položku spusťte. Vyberte projekt, který chcete upgradovat. V příkladu uvedeném v tomto článku jsou v aktuální složce čtyři projekty:
Selected options
───────────────────────────────────────────────────────────
No options specified, follow steps below to continue
Steps
─────────────────
Source project
─────────────────
Which project do you want to upgrade (found 9)?
> MatchingGame (winforms\MatchingGame\MatchingGame.csproj)
MatchingGame.Logic (winforms\MatchingGame.Logic\MatchingGame.Logic.csproj)
StarVoteControl (csharp\StarVoteControl\StarVoteControl.csproj)
WebSiteRatings (csharp\WebSiteRatings\WebSiteRatings.csproj)
Navigation
Exit
V závislosti na projektu, který upgradujete, se vám může zobrazit možnost určit, jak má upgrade pokračovat:
Místní upgrade projektu
Tato možnost upgraduje projekt bez vytvoření kopie.
Souběžný upgrade projektu
Tato možnost je k dispozici pouze pro projekty rozhraní .NET Framework. Zkopíruje projekt a upgraduje kopii a ponechá původní projekt sám.
Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Source project C:\Code\winforms\MatchingGame\MatchingGame.csproj
Steps
───────────────────────────────
Source project / Upgrade type
───────────────────────────────
How do you want to upgrade project MatchingGame?
> In-place project upgrade
Side-by-side project upgrade
Navigation
Back
Exit
Pokud po tomto kroku existuje více než jedna upgradovatelná cílová architektura, zvolíte cíl:
Selected options
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Source project C:\Code\Work\dotnet\dotnet-docs\docs\core\porting\snippets\upgrade-assistant-wpf-framework\winforms\MatchingGame\MatchingGame.csproj
Ugrade type Inplace
Steps
──────────────────────────────────────────────────
Source project / Ugrade type / Target framework
──────────────────────────────────────────────────
What is your preferred target framework?
> .NET 6.0 (Supported until November, 2024)
.NET 7.0 (Supported until May, 2024)
.NET 8.0 (Try latest preview features)
Navigation
Back
Exit
Po upgradu projektu ho budete muset důkladně otestovat.