Mise à niveau d’une application de bureau Windows Forms vers .NET 7

Cet article explique comment mettre à niveau une application de bureau Windows Forms vers .NET 7. Même si Windows Forms s’exécute sur .NET, une technologie multiplateforme, Windows Forms est toujours une infrastructure Windows uniquement. Les types de projets liés à Windows Forms suivants peuvent être mis à niveau avec l’Assistant Mise à niveau .NET :

  • Projet Windows Forms
  • Bibliothèque de contrôles
  • Bibliothèque .NET

Vous devez également passer en revue les informations contenues dans le guide de portage de .NET Framework vers .NET .

Prérequis

Application de démonstration

Cet article a été écrit dans le contexte de la mise à niveau de l’exemple de jeu correspondant Windows Forms, que vous pouvez télécharger à partir du dépôt GitHub d’exemples .NET.

Lancer la mise à niveau

Si vous mettez à niveau plusieurs projets, commencez par des projets qui n’ont aucune dépendance. Dans l’exemple De jeu correspondant, le projet MatchingGame dépend de la bibliothèque MatchingGame.Logic . Par conséquent , MatchingGame.Logic doit d’abord être mis à niveau.

Conseil

Veillez à disposer d’une sauvegarde de votre code, par exemple dans le contrôle de code source ou une copie.

Procédez comme suit pour mettre à niveau un projet dans Visual Studio :

  1. Cliquez avec le bouton droit sur le projet MatchingGame.Logic dans la fenêtre Explorateur de solutions, puis sélectionnez Mettre à niveau :

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

    Un nouvel onglet est ouvert qui vous invite à choisir la façon dont vous souhaitez que la mise à niveau soit effectuée.

  2. Sélectionnez Mise à niveau de projet sur place.

  3. Ensuite, sélectionnez l’infrastructure cible. En fonction du type de projet que vous mettez à niveau, vous disposez de différentes options. .NET Standard 2.0 est un bon choix si la bibliothèque ne s’appuie pas sur une technologie de bureau comme Windows Froms et peut être utilisée par les projets .NET Framework et les projets .NET. Toutefois, les dernières versions de .NET fournissent de nombreuses améliorations du langage et du compilateur sur .NET Standard.

    Sélectionnez .NET 7.0 , puis sélectionnez Suivant.

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

  4. Une arborescence s’affiche avec tous les artefacts liés au projet, tels que les fichiers de code et les bibliothèques. Vous pouvez mettre à niveau des artefacts individuels ou l’ensemble du projet, qui est la valeur par défaut. Sélectionnez Mettre à niveau la sélection pour démarrer la mise à niveau.

    Une fois la mise à niveau terminée, les résultats sont affichés :

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

    Les artefacts avec un cercle vert unie ont été mis à niveau alors que les cercles verts vides ont été ignorés. Les artefacts ignorés signifient que l’Assistant mise à niveau n’a rien trouvé à mettre à niveau.

Maintenant que la bibliothèque de prise en charge de l’application est mise à niveau, mettez à niveau l’application principale.

Mettre à niveau l’application

Une fois que toutes les bibliothèques de prise en charge sont mises à niveau, le projet d’application principal peut être mis à niveau. Avec l’exemple d’application, il n’existe qu’un seul projet de bibliothèque à mettre à niveau, qui a été mis à niveau dans la section précédente.

  1. Cliquez avec le bouton droit sur le projet MatchingGame dans la fenêtre Explorateur de solutions, puis sélectionnez Mettre à niveau :
  2. Sélectionnez Mise à niveau du projet sur place comme mode de mise à niveau.
  3. Sélectionnez .NET 7.0 pour le framework cible, puis sélectionnez Suivant.
  4. Laissez tous les artefacts sélectionnés et sélectionnez Mettre à niveau la sélection.

Une fois la mise à niveau terminée, les résultats sont affichés. Notez comment le projet Windows Forms a un symbole d’avertissement. Développez cette étape et plus d’informations sont affichées :

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

Notez que le composant de mise à niveau du projet mentionne que la police par défaut a changé. Étant donné que la police peut affecter la disposition du contrôle, vous devez case activée chaque formulaire et contrôle personnalisé dans votre projet pour vous assurer que l’interface utilisateur est correctement organisée.

Générer une build propre

Une fois votre projet mis à niveau, propre et le compiler.

  1. Cliquez avec le bouton droit sur le projet MatchingGame dans la fenêtre Explorateur de solutions, puis sélectionnez Nettoyer.
  2. Cliquez avec le bouton droit sur le projet MatchingGame dans la fenêtre Explorateur de solutions, puis sélectionnez Générer.

Si votre application a rencontré des erreurs, vous pouvez les trouver dans la fenêtre Liste d’erreurs avec une recommandation pour les corriger.

Conclusion

L’exemple de projet de jeu correspondant Windows Forms est désormais mis à niveau vers .NET 7. Vos résultats seront différents lorsque vous migrez votre propre projet. Veillez à prendre le temps de passer en revue le portage de .NET Framework vers le guide .NET et la modernisation après la mise à niveau vers .NET à partir de l’article .NET Framework .