Aktualisieren einer Windows Forms-Desktopanwendung zu .NET 7

In diesem Artikel wird beschrieben, wie Sie eine Windows Forms-Desktopanwendung zu .NET 7 aktualisieren. Obwohl Windows Forms auf .NET ausgeführt wird, ist Windows Forms immer noch ein nur Windows-Framework. Die folgenden Windows Forms-bezogenen Projekttypen können mit dem .NET-Upgrade-Assistenten aktualisiert werden:

  • Windows Forms-Projekt
  • Steuerelementbibliothek
  • .NET-Bibliothek

Außerdem sollten Sie die Informationen im Leitfaden Portieren von .NET Framework zu .NET überprüfen.

Voraussetzungen

Demo-App

Dieser Artikel wurde im Kontext des Upgrades des Windows Forms Matching Game Sample-Projekts geschrieben, das Sie aus dem GitHub-Repository .NET-Beispiele herunterladen können.

Integrieren des Upgrades

Wenn Sie mehrere Projekte aktualisieren, beginnen Sie mit Projekten ohne Abhängigkeiten. Im Beispiel „Matching Game“ hängt das Projekt MatchingGame von der MatchingGame.Logic-Bibliothek ab, sodass MatchingGame.Logic zuerst aktualisiert werden sollte.

Tipp

Achten Sie darauf, dass Sie über eine Sicherungskopie Ihres Codes verfügen, z. B. in der Quellcodeverwaltung oder einer Kopie.

Führen Sie die folgenden Schritte aus, um ein Projekt in Visual Studio zu aktualisieren:

  1. Klicken Sie im Fenster Projektmappen-Explorer mit der rechten Maustaste auf das MatchingGame.Logic-Projekt, und wählen Sie Upgrade aus:

    The .NET Upgrade Assistant's Upgrade menu item in Visual Studio.

    Es wird eine neue Registerkarte geöffnet, die Sie auffordert, auszuwählen, wie das Upgrade ausgeführt werden soll.

  2. Wählen Sie Direktes Projektupgrade aus.

  3. Wählen Sie dann das Zielframework aus. Basierend auf dem Typ des Projekts, das Sie aktualisieren, werden Ihnen verschiedene Optionen angezeigt. .NET Standard 2.0 ist eine gute Wahl, wenn die Bibliothek nicht auf eine Desktoptechnologie wie Windows Froms basiert und von .NET Framework-Projekten und .NET-Projekten verwendet werden kann. Die neuesten .NET-Versionen bieten jedoch viele Sprach- und Compilerverbesserungen gegenüber .NET Standard.

    Wählen Sie .NET 7.0 und anschließend Weiter aus.

    The .NET Upgrade Assistant's target framework decision tab.

  4. Eine Struktur wird mit allen Artefakten im Zusammenhang mit dem Projekt angezeigt, z. B. Codedateien und Bibliotheken. Sie können einzelne Artefakte oder das gesamte Projekt aktualisieren, was die Standardeinstellung ist. Wählen Sie Upgradeauswahl aus, um das Upgrade zu starten.

    Wenn das Upgrade abgeschlossen ist, werden die Ergebnisse angezeigt:

    The .NET Upgrade Assistant's upgrade results tab, showing two out of the 13 items were skipped.

    Artefakte mit einem soliden grünen Kreis wurden aktualisiert, während leere grüne Kreise übersprungen wurden. Übersprungene Artefakte bedeuten, dass der Upgrade-Assistent nichts gefunden hat, um ein Upgrade durchzuführen.

Nachdem die unterstützende Bibliothek der App aktualisiert wurde, aktualisieren Sie die Standard App.

Aktualisieren der App

Sobald alle unterstützenden Bibliotheken aktualisiert wurden, kann das Standard-App-Projekt aktualisiert werden. Bei der Beispiel-App gibt es nur ein Bibliotheksprojekt zum Upgrade, das im vorherigen Abschnitt aktualisiert wurde.

  1. Klicken Sie im Fenster Projektmappen-Explorer mit der rechten Maustaste auf das MatchingGame-Projekt, und wählen Sie Upgrade aus:
  2. Wählen Sie Direktes Projektupgrade als Upgrademodus aus.
  3. Wählen Sie .NET 7.0 als Zielframework aus, und klicken Sie auf Weiter.
  4. Lassen Sie alle Artefakte ausgewählt, und wählen Sie Upgrade aus.

Nach Abschluss des Upgrades werden die Ergebnisse angezeigt. Beachten Sie, wie das Windows Forms-Projekt ein Warnsymbol hat. Erweitern Sie dies, um weitere Informationen zu diesem Schritt anzuzeigen:

The .NET Upgrade Assistant's upgrade results tab, showing some of the result items have warning symbols.

Beachten Sie, dass die Projektupgradekomponente erwähnt, dass die Standardschriftart geändert wurde. Da sich die Schriftart auf das Steuerelementlayout auswirken kann, müssen Sie jedes Formular und jedes benutzerdefinierte Steuerelement in Ihrem Projekt überprüfen, um sicherzustellen, dass die Benutzeroberfläche ordnungsgemäß angeordnet ist.

Generieren eines sauberen Builds

Nachdem das Projekt aktualisiert wurde, bereinigen und kompilieren Sie es.

  1. Klicken Sie im Fenster Projektmappen-Explorer mit der rechten Maustaste auf das MatchingGame-Projekt, und wählen Sie Bereinigen aus:
  2. Klicken Sie im Fenster Projektmappen-Explorer mit der rechten Maustaste auf das MatchingGame-Projekt, und wählen Sie Erstellen aus:

Wenn bei Ihrer Anwendung Fehler aufgetreten sind, finden Sie sie im Fenster Fehlerliste mit einer Empfehlung zur Behebung.

Zusammenfassung

Das Windows Forms Matching Game Sample-Projekt wird jetzt auf .NET 7 aktualisiert. Ihre Ergebnisse unterscheiden sich, wenn Sie Ihr eigenes Projekt migrieren. Stellen Sie sicher, dass Sie sich die Zeit nehmen, um den Leitfaden Portieren von .NET Framework zu .NET und den Artikel Modernisieren nach dem Upgrade von .NET Framework auf .NET zu lesen.