Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
GitHub Copilot modernisation de .NET vous aide à moderniser scenarios et skills :
- Scenarios sont des flux de travail managés de bout en bout pour des objectifs de mise à niveau majeurs, tels que la mise à niveau de .NET Framework vers .NET 10. Les scénarios coordonnent le cycle de vie complet : évaluation, planification et exécution des tâches par tâche.
- Les compétences sont axées sur les fonctionnalités de mise à niveau spécifiques, telles que la conversion d’EF6 en EF Core ou le remplacement de WCF par CoreWCF. Les compétences s’activent automatiquement lorsque l’agent rencontre du code approprié pendant une mise à niveau.
L’agent prend en charge les projets C# et Visual Basic.
Conseil / Astuce
Vous n’avez pas besoin de mémoriser les noms. Décrivez ce que vous souhaitez ("mettre à niveau vers .NET 10", "mettre à niveau mon code EF6", "remplacer Newtonsoft.Json") et l’agent charge automatiquement le scénario et les compétences appropriés. Vous pouvez également demander : « Que pouvez-vous m’aider ? »
Scénarios
Les scénarios sont les flux de travail de mise à niveau de niveau de niveau supérieur de l’agent. Lorsque vous démarrez une conversation, l’agent identifie le meilleur scénario pour votre objectif et vous guide pas à pas.
| Scénario | Qu’est-ce que cela fait ? | Exemple d’invite |
|---|---|---|
| .NET mise à niveau de version | Met à niveau les projets d’une version antérieure de .NET vers .NET 8 ou version ultérieure. | « Mettre à niveau ma solution vers .NET 10 |
| Conversion de style SDK | Convertit les fichiers projet hérités au format de style SDK moderne. | « Convertir mes projets en style SDK » |
| Mise à niveau de Newtonsoft.Json | Remplace Newtonsoft.Json par System.Text.Json dans une solution. | « Mettre à niveau à partir de Newtonsoft.Json » |
| Mise à niveau de SqlClient | Met à niveau System.Data.SqlClient vers Microsoft. Data.SqlClient. | « Mettre à jour SqlClient vers le package moderne » |
| Azure Functions mise à niveau | Met à niveau Azure Functions du modèle worker isolé du processus. | » Mettre à niveau mon Azure Functions" |
| Noyau sémantique aux agents | Met à niveau des agents SK vers Microsoft Agent Framework. | « Mettre à niveau mes agents SK » |
Pour obtenir une procédure pas à pas de bout en bout, consultez les concepts de base.
mise à niveau de version .NET
Scénario le plus courant. Met à niveau vos projets d’une variante de .NET plus ancienne vers la dernière version :
| Origine | Cible |
|---|---|
| .NET Framework (n’importe quelle version) | .NET 8 ou version ultérieure |
| .NET Core 1.x–3.x | .NET 8 ou version ultérieure |
| .NET 5 ou version ultérieure | .NET 8 ou version ultérieure |
L’agent analyse votre graphique de dépendances, vérifie la compatibilité NuGet, identifie les changements cassants et crée un plan de tâche à l’aide de la meilleure stratégie pour votre solution (bas en haut, en haut ou tout en bas ou tout en même temps). Si vos projets ont besoin de conversions de format, l’agent les gère automatiquement dans le cadre de la mise à niveau.
Conversion de style SDK
Convertit les fichiers hérités et .csproj les .vbproj fichiers au format de style SDK moderne sans modifier les frameworks cibles. L’agent gère automatiquement la conversion pendant les mises à niveau de version. Exécutez ce scénario indépendamment si nécessaire.
Mise à niveau de Newtonsoft.Json
Remplace par Newtonsoft.JsonSystem.Text.Json l’ensemble de votre solution. Gère les convertisseurs personnalisés, [JsonProperty] les attributs, JObject/JArray l’utilisation et les paramètres de sérialisation.
Mise à niveau de SqlClient
Met à niveau System.Data.SqlClient vers Microsoft.Data.SqlClient. Gère le changement de comportement par défaut Encrypt=true et les différences de chaîne de connexion.
mise à niveau de Azure Functions
Met à niveau Azure Functions du modèle d’hébergement in-process vers le modèle worker isolé avec Program.cs et HostApplicationBuilder. Inclut la mise à niveau d’Application Insights.
Noyau sémantique à Microsoft Agent Framework
Met à niveau les agents Noyau sémantique (ChatCompletionAgent, OpenAIAssistantAgent) vers Microsoft Agent Framework. Met à jour les packages et les modèles d’API.
Compétences de mise à niveau : courantes
Compétences de mise à niveau à usage général qui s’appliquent à tous les types de projets.
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Conversion en style SDK | Convertit les fichiers projet hérités au format de style SDK moderne. Utilise l’ordre topologique pour les solutions multi-projets. |
| Agradation automatique vers .NET DI | Supprime entièrement Autofac et met à niveau toutes les inscriptions vers l’injection de dépendances intégrée ASP.NET Core. |
| Integrating Autofac avec .NET | Conserve Autofac en tant que conteneur d’adresses d’intégration, mais moderniser son intégration ASP.NET Core. |
| Mise à niveau des espaces de noms de chiffrement | Corrige le fractionnement de l’espace System.Security.Cryptography de noms pour les types tels X509Certificate2 que et SignedCms. |
| Mise à niveau de Newtonsoft vers System.Text.Json | Mise à niveau complète à partir de Newtonsoft.Json. Gère les convertisseurs, les attributs, les types dynamiques et les paramètres. |
| Upgradation des Noyau sémantique aux agents | Met à niveau les API de l’agent Noyau sémantique vers l’infrastructure IA des agents Microsoft. |
| Mise à niveau vers MSMQ. Messagerie | Les mises à niveau de System.Messaging (.NET Framework uniquement) vers MSMQ.Messaging pour .NET Core. |
| Conversion en gestion centralisée des packages | Convertit le contrôle de version de package NuGet par projet en gestion centralisée des packages à l’aide Directory.Packages.propsde . |
| Modernisation de la version C# | Met à niveau le code C# pour utiliser des fonctionnalités de langage plus récentes (C# 7.0 à 15). Traitement par lots de modifications mécaniques et dotnet format utilise le jugement LLM pour les transformations sémantiques. |
| Mise à niveau des références nullables C# | Active les types de référence nullables et résout systématiquement tous les avertissements CS86xx. Couvre les stratégies de déploiement, les conseils d’annotation et les considérations spécifiques à l’infrastructure. |
Compétences de mise à niveau : accès aux données
Compétences pour la mise à niveau des couches d’accès aux données, notamment Entity Framework, LINQ to SQL et les bibliothèques clientes SQL.
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Mise à niveau d’EDMX vers Code-First | Convertit les modèles EF6 Database-First (.edmx) en EF Core Code-First. Structure les entités de la base de données. |
| Mise à niveau d’EF DbContext | Inscrit DbContext dans ASP.NET Core injection de dépendances. Gère les modèles EF6 vers EF Core et EF Core existants. |
| Mise à niveau d’EF6 Code-First vers EF Core | Met à niveau EF6 Code-First vers EF Core. Échange les packages, met à jour les espaces de noms et remplace EntityTypeConfiguration et DbModelBuilder. |
| Upgradation à Microsoft. Data.SqlClient | Mises à niveau depuis System.Data.SqlClient. Gère la modification par défaut Encrypt=true et les différences de chaîne de connexion. |
Mettre à niveau les compétences : web et ASP.NET
Compétences pour la mise à niveau d’applications ASP.NET Framework vers ASP.NET Core.
mise à niveau de ASP.NET Framework
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Upgradation ASP.NET Framework vers Core | Mise à niveau complète de ASP.NET Framework (MVC/WebAPI) vers ASP.NET Core, notamment les contrôleurs, les vues, l’intergiciel, l’authentification et la configuration. |
| Upgradation ASP.NET Identity | Met à niveau ASP.NET MVC Identity vers ASP.NET Core Identity, notamment IdentityDbContext, UserManager, SignInManager et middleware d’authentification. |
| Mise à niveau de Global.asax | Convertit les événements de cycle de vie Global.asax (Application_Start, Application_Error) en ASP.NET Core Program.cs et intergiciel. |
| Mise à niveau d’OWIN vers l’intergiciel | Remplace le middleware OWIN/Katana (IAppBuilder, OwinMiddleware) par des équivalents ASP.NET Core. |
| Mise à niveau de l’authentification des cookies OWIN | Met à niveau le middleware d’authentification des cookies OWIN pour ASP.NET Core l’authentification des cookies. |
| Mise à niveau d’OWIN OAuth vers JWT | Met à niveau l’authentification par jeton du porteur OWIN OAuth pour ASP.NET Core authentification du porteur JWT. |
| Mise à niveau d’OWIN OpenID Connect | Met à niveau l’intergiciel OWIN OpenID Connect pour ASP.NET Core l’authentification OpenID Connect. |
Fonctionnalités MVC
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Mise à niveau de l’authentification MVC | Met à niveau ASP.NET MVC l’authentification vers ASP.NET Core intergiciel d’identité et d’authentification. |
| Mise à niveau du regroupement MVC | Convertit le regroupement en balises directes System.Web.Optimization<script>/<link> ou en bundlers modernes. |
| Mise à niveau de la configuration MVC | Met à niveau les paramètres web.config et app.config vers le système de configuration ASP.NET Core (appsettings.json, variables d’environnement). |
| Mise à niveau de la négociation de contenu MVC | Met à niveau les modèles et les formateurs de contenu pour ASP.NET Core. |
| Mise à niveau des contrôleurs MVC | Met à niveau les contrôleurs MVC et WebAPI pour ASP.NET Core modèles de contrôleur. |
| Mise à niveau de l’injection de dépendances MVC | Met à niveau les inscriptions de conteneurs d'adresses di vers l'injection de dépendances intégrée de ASP.NET Core. |
| Mise à niveau des filtres MVC | Convertit les filtres MVC globaux (FilterConfig, GlobalFilters) en ASP.NET Core intergiciel et pipeline de filtre. |
| Mise à niveau du pipeline HTTP MVC | Met à niveau les modules et les gestionnaires HTTP vers ASP.NET Core intergiciel. |
| Mise à niveau de MVC HttpContext | Met à niveau System.Web.HttpContext l’utilisation vers ASP.NET Core HttpContext. |
| Mise à niveau de la journalisation MVC | Met à niveau la journalisation vers Microsoft.Extensions.Logging. |
| Mise à niveau de la liaison de modèle MVC | Met à niveau les modèles de liaison de modèle pour ASP.NET Core liaison de modèle. |
| Mise à niveau des vues Razor MVC | Met à niveau les vues, les dispositions et les composants d’affichage Razor pour ASP.NET Core Razor. |
| Mise à niveau du routage MVC | Convertit le routage RouteCollection en routage de point de terminaison ASP.NET Core (MapControllerRoute, routage d’attributs). |
| Mise à niveau de l’état de session MVC | Met à niveau l’état de session vers ASP.NET Core session distribuée. |
| Mise à niveau des fichiers statiques MVC | Met à niveau la gestion des fichiers statiques vers l'intergiciel des fichiers statiques de ASP.NET Core. |
| Mise à niveau des adaptateurs MVC System.Web | Utilise des adaptateurs System.Web pour la mise à niveau incrémentielle de ASP.NET Framework vers ASP.NET Core. |
| Mise à niveau de la validation MVC | Met à niveau les attributs et les modèles de validation pour ASP.NET Core validation. |
WCF
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Mise à niveau de WCF vers CoreWCF | Met à niveau les services WCF côté serveur vers CoreWCF pour .NET 6+. Convertit l’hébergement, les liaisons, les extensions de comportement et les contrats asynchrones. |
Compétences de mise à niveau : cloud et Azure
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Upgradation Azure Functions Démarrage | Met à niveau Azure Functions de la classe in-process Startup vers un modèle worker isolé avec Program.cs. |
| Upgradation Azure Functions vers v2 | Met à niveau Azure Functions vers le modèle d’hébergement v2 à l’aide de IHostApplicationBuilder. |
| Upgradation Azure Key Vault | Met à niveau le SDK Azure Key Vault hérité vers les bibliothèques Azure.Security.KeyVault modernes. |
| Upgradation Azure Service Bus | Met à niveau le SDK Azure Service Bus hérité vers la bibliothèque Azure.Messaging.ServiceBus moderne. |
| Upgradation stockage Azure | Met à niveau le SDK stockage Azure hérité vers les bibliothèques Azure.Storage modernes. |
Compétences de mise à niveau : bibliothèques
| Compétence | Qu’est-ce que cela fait ? |
|---|---|
| Mise à niveau d’ADAL vers MSAL | Met à niveau Azure Active Directory bibliothèque d’authentification (ADAL) vers Microsoft Authentication Library (MSAL). |
| Upgradation ASP.NET SignalR | Met à niveau ASP.NET SignalR vers ASP.NET Core SignalR. |
| Mise à niveau des interfaces Bond | Met à niveau Microsoft sérialisation bond vers des alternatives modernes. |
| Mise à niveau de données EDM vers OData | Met à niveau les types vers les bibliothèques Data.Edm OData. |
| Mise à niveau des données OData vers OData Core | Met à niveau Microsoft.Data.OData vers Microsoft.OData.Core. |
| Mise à niveau du client Data Services | Met à niveau le client WCF Data Services vers le client OData moderne. |
| Mise à niveau du Kit de développement logiciel (SDK) PowerShell | Met à niveau les modules PowerShell de Windows PowerShell 5.1 vers PowerShell 7+ avec le package Microsoft.PowerShell.SDK. |
| Mise à niveau des services SPA vers le proxy SPA | Met à niveau Microsoft.AspNetCore.SpaServices vers le modèle d’hébergement du proxy SPA. |
| Mise à niveau de System.Spatial | Met à niveau Microsoft.Spatial et System.Spatial vers des alternatives spatiales modernes. |
| Mise à niveau de CORS WebAPI | Met à niveau System.Web.Http.Cors vers ASP.NET Core intergiciel CORS. |
| Mise à niveau d’OData WebAPI | Met à niveau webAPI OData vers ASP.NET Core OData. |
Quand les compétences s’activent
L’agent charge progressivement les compétences à mesure que votre session de mise à niveau se déroule :
| Quand | Que se passe-t-il ? |
|---|---|
| Démarrage de session | L’agent charge le scénario correspondant et toutes les compétences qui sont immédiatement pertinentes pour votre codebase. |
| Pendant l’exécution | À mesure que l’agent effectue des tâches, il charge des compétences spécialisées supplémentaires à la demande lorsqu’il rencontre des modèles de mise à niveau spécifiques, tels que des fichiers EDMX, des services WCF ou des intergiciels OWIN. |
| À la demande | Vous pouvez demander à l’agent d’utiliser n’importe quelle compétence à tout moment. Par exemple, « aidez-moi à mettre à niveau WCF vers CoreWCF » ou « utilisez la compétence de mise à niveau EF6 ». |
Vous n’avez pas besoin de gérer le chargement des compétences. L’agent le gère automatiquement. Décrivez simplement ce dont vous avez besoin.
Créer vos propres compétences
Créez des compétences personnalisées pour enseigner les modèles d’agent spécifiques à votre codebase, tels que les mises à niveau internes de framework, les conventions de codage ou les flux de travail de mise à niveau personnalisés.
Placez les compétences dans votre référentiel (.github/skills/) ou votre profil utilisateur (%UserProfile%/.copilot/skills/) et l’agent les récupère automatiquement.
Pour plus d’informations sur la création de compétences personnalisées, consultez Appliquer des instructions de mise à niveau personnalisées.