Der .NET Upgrade Assistant ist ein leistungsstarkes Tool, das als Visual Studio-Erweiterung und Befehlszeilenwerkzeug fungiert. Es unterstützt Entwickler dabei, Anwendungen von älteren .NET-Versionen auf die neuesten Versionen zu aktualisieren. Das Tool bietet umfassende Unterstützung für die Aktualisierung von Microsoft-Bibliotheken und -Frameworks. Microsoft hat eine neue Funktion vorgestellt: die Unterstützung für Drittanbieter-APIs und Paketkarten. Diese Neuerung ermöglicht es, veraltete Drittanbieter-APIs und -Pakete während des Upgrade-Prozesses durch ihre neueren Gegenstücke zu ersetzen, was den Übergang zu neuen Plattformen wie UWP zu WinUI oder Xamarin Forms zu .NET MAUI vereinfacht.
Was ist die Unterstützung für Drittanbieter-APIs und Paketkarten?
Beim Aktualisieren älterer Anwendungen auf die neueste .NET-Version besteht eine der grössten Herausforderungen darin, die entsprechenden APIs und NuGet-Pakete von Drittanbieter-Bibliotheken zu finden. Diese Aufgabe wird noch komplexer, wenn auch ein Plattformwechsel, wie von UWP zu WinUI oder von Xamarin Forms zu .NET MAUI, erfolgt. Beispielsweise muss das Namespace Xamarin.Forms durch Microsoft.Maui und/oder Microsoft.Maui.Controls ersetzt werden. Zusätzlich zu den Namespaces müssen oft auch Typen und Methoden angepasst werden.Der .NET Upgrade Assistant bietet bereits umfangreiche Mappings für von Microsoft verwaltete Bibliotheken. Jetzt unterstützt der .NET Upgrade Assistant auch Drittanbieter-API- und Paketkarten. Diese Funktion ermöglicht es jedem, Mappings für seine eigenen Bibliotheken zu erstellen, die Informationen über alte und neue APIs und Pakete enthalten. Der Upgrade Assistant verwendet diese Mappings zusätzlich zu den integrierten Mappings, um Code- und Projektänderungen während eines Upgrades durchzuführen.Erstellen von API- und Paketkarten
Um Drittanbieter-API-Karten für den .NET Upgrade Assistant zu erstellen, sind folgende Schritte notwendig:- Lesen Sie die README.md im Upgrade-Assistant-Github-Repo.
- Klonen Sie das Repository und öffnen Sie UpgradeAssistantExtensions.sln in Visual Studio.
- Erstellen Sie einen neuen Ordner für Ihr Unternehmen mit einem Unterordner für Ihre Bibliothek unter Mappings im Projekt UpgradeAssistant.Mappings.
- Fügen Sie *.apimap.json und *.packagemap.json Dateien für Ihre Bibliothek hinzu (verwenden Sie die Beispiele oder vorhandene Mappings als Ausgangspunkt).
- Erstellen Sie das NuGet-Paket für die Mappings durch Ausführen des Pack-Befehls.
Testen der API- und Paketkarten
Um das NuGet-Paket mit den erstellten Mappings zu testen, gehen Sie wie folgt vor:- Stellen Sie sicher, dass Sie die neueste Version der .NET Upgrade Assistant-Erweiterung aus dem Visual Studio Marketplace haben.
- Erstellen/Öffnen Sie ein Testprojekt, das die in Ihren neuen Mappings angegebenen APIs und Pakete verwendet.
- Richten Sie einen lokalen Feed-Ordner ein, z.B. C:\LocalFeed.
- Fügen Sie das zuvor erstellte Microsoft.UpgradeAssistant.Mappings-Paket dem lokalen Feed hinzu, indem Sie folgenden Befehl im Ausgabeordner ausführen: `nuget add Microsoft.UpgradeAssistant.Mappings.1.0.0.nupkg -source C:\LocalFeed`
- Erstellen Sie eine Nuget.config-Datei mit folgendem Inhalt im Lösungsordner des Testprojekts:
- Führen Sie den Upgrade Assistant aus, um das Testprojekt zu aktualisieren.