Scenari e informazioni di riferimento sulle competenze

GitHub Copilot modernizzazione per .NET consente di modernizzare scenarios e skills:

  • Scenarios sono flussi di lavoro gestiti end-to-end per obiettivi di aggiornamento principali, ad esempio l'aggiornamento da .NET Framework a .NET 10. Gli scenari coordinano il ciclo di vita completo: valutazione, pianificazione e esecuzione di attività per attività.
  • Le competenze sono funzionalità incentrate per attività di aggiornamento specifiche, ad esempio la conversione di EF6 in EF Core o la sostituzione di WCF con CoreWCF. Le competenze vengono attivate automaticamente quando l'agente rileva il codice pertinente durante un aggiornamento.

L'agente supporta sia progetti C# che Visual Basic.

Suggerimento

Non è necessario memorizzare i nomi. Descrivere cosa si vuole ("eseguire l'aggiornamento a .NET 10", "aggiornare automaticamente il codice EF6", "replace Newtonsoft.Json") e l'agente carica automaticamente lo scenario e le competenze corrette. Si può anche chiedere: "Cosa può aiutarmi con?"

Scenari

Gli scenari sono i flussi di lavoro di aggiornamento di primo livello dell'agente. Quando si avvia una conversazione, l'agente identifica lo scenario migliore per l'obiettivo e lo illustra in modo dettagliato.

Scenario Funzionamento Richiesta di esempio
.NET aggiornamento della versione Aggiorna i progetti da qualsiasi versione di .NET precedente a .NET 8 o versione successiva. "Aggiornare la soluzione a .NET 10"
Conversione in stile SDK Converte i file di progetto legacy in formato SDK moderno. "Convertire i progetti in stile SDK"
Aggiornamento di Newtonsoft.Json Sostituisce Newtonsoft.Json con System.Text.Json in una soluzione. "Eseguire l'aggiornamento da Newtonsoft.Json"
Aggiornamento di SqlClient Aggiorna System.Data.SqlClient a Microsoft. Data.SqlClient. "Aggiornare SqlClient al pacchetto moderno"
Funzioni di Azure upgrade Aggiorna Funzioni di Azure dal modello di lavoro in-process al modello di lavoro isolato. "Aggiornare il Funzioni di Azure"
Kernel semantico agli agenti Aggiornamenti da agenti SK a Microsoft Agent Framework. "Aggiornare gli agenti SK"

Per una procedura dettagliata end-to-end, vedere Concetti di base.

.NET aggiornamento della versione

Scenario più comune. Aggiorna i progetti da qualsiasi variante di .NET precedente alla versione più recente:

origine Destinazione
.NET Framework (qualsiasi versione) .NET 8 o versioni successive
.NET Core 1.x–3.x .NET 8 o versioni successive
.NET 5 o versioni successive .NET 8 o versioni successive

L'agente analizza il grafico delle dipendenze, verifica la compatibilità di NuGet, identifica le modifiche di rilievo e crea un piano attività usando la strategia migliore per la soluzione (in basso, dall'alto verso il basso, dall'alto verso il basso o all-at-once). Se i progetti richiedono conversioni di formato, l'agente li gestisce automaticamente come parte dell'aggiornamento.

Conversione in stile SDK

Converte i file legacy .csproj e .vbproj nel formato moderno in stile SDK senza modificare i framework di destinazione. L'agente gestisce automaticamente la conversione durante gli aggiornamenti della versione. Eseguire questo scenario in modo indipendente, se necessario.

Aggiornamento di Newtonsoft.Json

Sostituisce Newtonsoft.Json con System.Text.Json in tutta la soluzione. Gestisce convertitori personalizzati, [JsonProperty] attributi, JObject/JArray utilizzo e impostazioni di serializzazione.

Aggiornamento di SqlClient

Aggiornamenti da System.Data.SqlClient a Microsoft.Data.SqlClient. Gestisce la modifica del comportamento predefinito di Encrypt=true e le differenze di stringa di connessione.

Funzioni di Azure aggiornamento

Aggiorna Funzioni di Azure dal modello di hosting in-process al modello di lavoro isolato con Program.cs e HostApplicationBuilder. Include l'aggiornamento di Application Insights.

Kernel semantico a Microsoft Agent Framework

Aggiornamenti da agenti di Kernel semantico (ChatCompletionAgent, OpenAIAssistantAgent) a Microsoft Agent Framework. Aggiorna pacchetti e modelli API.

Competenze di aggiornamento: comuni

Competenze di aggiornamento per utilizzo generico che si applicano a tutti i tipi di progetto.

Competenza Funzionamento
Conversione in stile SDK Converte i file di progetto legacy in formato SDK moderno. Usa l'ordinamento topologico per le soluzioni multiprogetto.
Upgrading Autofac to .NET DI Rimuove completamente Autofac e aggiorna tutte le registrazioni all'inserimento di dipendenze ASP.NET Core predefinito.
Integrating Autofac with .NET Mantiene Autofac come contenitore di inserimento delle dipendenze, ma ne modernizza l'integrazione ASP.NET Core.
Aggiornamento degli spazi dei nomi di crittografia Corregge la System.Security.Cryptography divisione dello spazio dei nomi per i tipi come X509Certificate2 e SignedCms.
Aggiornamento di Newtonsoft a System.Text.Json Aggiornamento completo da Newtonsoft.Json. Gestisce convertitori, attributi, tipi dinamici e impostazioni.
Upgrading Kernel semantico agli agenti Aggiorna le API dell'agente Kernel semantico al framework di intelligenza artificiale degli agenti di Microsoft.
Aggiornamento a MSMQ. Messaggistica Aggiornamenti da System.Messaging (solo framework di .NET) a MSMQ.Messaging per .NET Core.
Conversione in Gestione pacchetti centrale Converte il controllo delle versioni dei pacchetti NuGet per progetto in una gestione centralizzata dei pacchetti tramite Directory.Packages.props.
Modernizzazione della versione C# Aggiorna il codice C# per usare le funzionalità del linguaggio più recenti (da C# 7.0 a 15). Raggruppa le modifiche meccaniche tramite dotnet format e usa il giudizio LLM per le trasformazioni semantiche.
Aggiornamento dei riferimenti nullable per C# Abilita i tipi riferimento nullable e risolve sistematicamente tutti gli avvisi CS86xx. Vengono illustrate le strategie di implementazione, le indicazioni sulle annotazioni e le considerazioni specifiche del framework.

Competenze di aggiornamento: accesso ai dati

Competenze per l'aggiornamento dei livelli di accesso ai dati, tra cui Entity Framework, LINQ to SQL e librerie client SQL.

Competenza Funzionamento
Aggiornamento di EDMX a Code-First Converte i modelli ef6 Database-First (.edmx) in EF Core Code-First. Eseguire lo scaffolding delle entità dal database.
Aggiornamento di Ef DbContext Registra DbContext in ASP.NET Core inserimento delle dipendenze. Gestisce ef6 in EF Core e nei modelli EF Core esistenti.
Aggiornamento di EF6 Code-First a EF Core Aggiorna EF6 Code-First a EF Core. Scambia pacchetti, aggiorna gli spazi dei nomi e sostituisce EntityTypeConfiguration e DbModelBuilder.
Upgrading in Microsoft. Data.SqlClient Aggiornamenti da System.Data.SqlClient. Gestisce la modifica predefinita Encrypt=true e le differenze stringa di connessione.

Competenze di aggiornamento: Web e ASP.NET

Competenze per l'aggiornamento di applicazioni ASP.NET Framework alle ASP.NET Core.

aggiornamento di ASP.NET Framework

Competenza Funzionamento
Upgrading ASP.NET Framework to Core Aggiornamento completo da ASP.NET Framework (MVC/WebAPI) a ASP.NET Core, inclusi controller, viste, middleware, autenticazione e configurazione.
Upgrading ASP.NET Identity Aggiorna l'identità ASP.NET MVC all'identità ASP.NET Core, tra cui IdentityDbContext, UserManager, SignInManager e middleware di autenticazione.
Aggiornamento di Global.asax Converte gli eventi del ciclo di vita Global.asax (Application_Start, Application_Error) in ASP.NET Core Program.cs e middleware.
Aggiornamento di OWIN al middleware Sostituisce il middleware OWIN/Katana (IAppBuilder, OwinMiddleware) con equivalenti ASP.NET Core.
Aggiornamento dell'autenticazione dei cookie OWIN Aggiorna il middleware di autenticazione dei cookie OWIN all'autenticazione dei cookie ASP.NET Core.
Aggiornamento di OWIN OAuth a JWT Aggiorna l'autenticazione del token di connessione OAuth OWIN a ASP.NET Core'autenticazione del bearer JWT.
Aggiornamento di OWIN OpenID Connect Aggiorna il middleware OWIN OpenID Connect a ASP.NET Core l'autenticazione OpenID Connect.

Funzionalità di MVC

Competenza Funzionamento
Aggiornamento dell'autenticazione MVC Aggiorna ASP.NET MVC'autenticazione a ASP.NET Core middleware di identità e autenticazione.
Aggiornamento della creazione di bundle MVC Converte la System.Web.Optimization creazione di bundle in tag diretti <script>/<link> o bundler moderni.
Aggiornamento della configurazione MVC Aggiorna le impostazioni web.config e app.config al sistema di configurazione ASP.NET Core (appsettings.json, variabili di ambiente).
Aggiornamento della negoziazione del contenuto MVC Aggiorna i modelli di negoziazione del contenuto e i formattatori alle ASP.NET Core.
Aggiornamento dei controller MVC Aggiorna i controller MVC e WebAPI ai modelli di controller ASP.NET Core.
Aggiornamento dell'inserimento delle dipendenze MVC Aggiorna le registrazioni dei contenitori di inserimento delle dipendenze all'inserimento delle dipendenze predefinito di ASP.NET Core.
Aggiornamento dei filtri MVC Converte i filtri MVC globali (FilterConfig, GlobalFilters) in ASP.NET Core middleware e pipeline di filtro.
Aggiornamento della pipeline HTTP MVC Aggiorna i moduli e i gestori HTTP al middleware ASP.NET Core.
Aggiornamento di MVC HttpContext Aggiorna l'utilizzo di System.Web.HttpContext a ASP.NET Core HttpContext.
Aggiornamento della registrazione MVC Aggiorna la registrazione a Microsoft.Extensions.Logging.
Aggiornamento dell'associazione di modelli MVC Aggiorna i modelli di associazione di modelli a ASP.NET Core binding di modelli.
Aggiornamento delle visualizzazioni Razor MVC Aggiorna visualizzazioni, layout e componenti di visualizzazione Razor a ASP.NET Core Razor.
Aggiornamento del routing MVC Converte il routing RouteCollection nel routing degli endpoint ASP.NET Core (MapControllerRoute, routing degli attributi).
Aggiornamento dello stato della sessione MVC Aggiorna lo stato della sessione a ASP.NET Core sessione distribuita.
Aggiornamento di file statici MVC Aggiorna la gestione dei file statici al middleware dei file statici di ASP.NET Core.
Aggiornamento degli adattatori System.Web MVC Usa gli adattatori System.Web per l'aggiornamento incrementale da ASP.NET Framework a ASP.NET Core.
Aggiornamento della convalida MVC Aggiorna gli attributi e i modelli di convalida per ASP.NET Core convalida.

WCF

Competenza Funzionamento
Aggiornamento di WCF a CoreWCF Aggiorna i servizi WCF sul lato server a CoreWCF per .NET 6+. Converte hosting, associazioni, estensioni del comportamento e contratti asincroni.

Competenze di aggiornamento: cloud e Azure

Competenza Funzionamento
Upgrading Funzioni di Azure Startup Aggiorna Funzioni di Azure dalla classe Startup in-process al modello di lavoro isolato con Program.cs.
Upgrading Funzioni di Azure da v2 Aggiorna Funzioni di Azure al modello di hosting v2 usando IHostApplicationBuilder.
Upgrading Azure Key Vault Aggiorna Azure Key Vault SDK legacy alle moderne librerie Azure.Security.KeyVault.
Upgrading bus di servizio di Azure Aggiorna bus di servizio di Azure SDK legacy alla libreria Azure.Messaging.ServiceBus moderna.
Upgrading Archiviazione di Azure Aggiorna Archiviazione di Azure SDK legacy alle moderne librerie Azure.Storage.

Competenze di aggiornamento: librerie

Competenza Funzionamento
Aggiornamento di ADAL a MSAL Aggiorna Azure Active Directory Authentication Library (ADAL) a Libreria di Autenticazione Microsoft (MSAL).
Upgrading ASP.NET SignalR Aggiorna ASP.NET SignalR a ASP.NET Core SignalR.
Aggiornamento delle interfacce bond Aggiorna Microsoft serializzazione bond alle alternative moderne.
Aggiornamento di Data EDM a OData Aggiorna i Data.Edm tipi alle librerie OData.
Aggiornamento di OData dati a OData Core Aggiorna Microsoft.Data.OData a Microsoft.OData.Core.
Aggiornamento del client di Data Services Aggiorna il client WCF Data Services al client OData moderno.
Aggiornamento di PowerShell SDK Aggiorna i moduli di PowerShell da Windows PowerShell 5.1 a PowerShell 7+ con il pacchetto Microsoft.PowerShell.SDK.
Aggiornamento dei servizi SPA al proxy SPA Aggiorna Microsoft.AspNetCore.SpaServices al modello di hosting proxy spa.
Aggiornamento di System.Spatial Aggiorna Microsoft.Spatial e System.Spatial alle alternative spaziali moderne.
Aggiornamento di WebAPI CORS Aggiorna System.Web.Http.Cors al middleware CORS ASP.NET Core.
Aggiornamento di WebAPI OData Aggiorna WebAPI OData a ASP.NET Core OData.

Quando si attivano le competenze

L'agente carica le competenze progressivamente man mano che si svolge la sessione di aggiornamento:

Quando Che succede
Inizio sessione L'agente carica lo scenario di corrispondenza e tutte le competenze immediatamente rilevanti per la codebase.
Durante l'esecuzione Mentre l'agente esegue attività, carica competenze specializzate aggiuntive su richiesta quando rileva modelli di aggiornamento specifici, ad esempio file EDMX, servizi WCF o middleware OWIN.
Su richiesta È possibile chiedere all'agente di usare qualsiasi competenza in qualsiasi momento. Ad esempio, "aiutami ad aggiornare WCF a CoreWCF" o "usare la competenza di aggiornamento di EF6".

Non è necessario gestire il caricamento delle competenze. L'agente lo gestisce automaticamente. Descrivere solo ciò di cui hai bisogno.

Creare competenze personalizzate

Creare competenze personalizzate per insegnare i modelli di agente specifici per la codebase, ad esempio gli aggiornamenti interni del framework, le convenzioni di codifica o i flussi di lavoro di aggiornamento personalizzati.

Posizionare le competenze nel repository () o nel profilo utente (.github/skills/%UserProfile%/.copilot/skills/) e l'agente le preleva automaticamente.

Per altre informazioni sulla creazione di competenze personalizzate, vedere Applicare istruzioni di aggiornamento personalizzate.