Informations de référence sur les scénarios et les compétences

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.