Referens för scenarier och färdigheter

GitHub Copilot modernisering för .NET hjälper dig att modernisera genom scenarios och skills:

  • Scenarios är hanterade arbetsflöden från slutpunkt till slutpunkt för större uppgraderingsmål, till exempel uppgradering från .NET Framework till .NET 10. Scenarier samordnar hela livscykeln: utvärdering, planering och uppgift för uppgiftskörning.
  • Färdigheter är fokuserade funktioner för specifika uppgraderingsuppgifter, till exempel att konvertera EF6 till EF Core eller ersätta WCF med CoreWCF. Färdigheter aktiveras automatiskt när agenten stöter på relevant kod under en uppgradering.

Agenten stöder både C#- och Visual Basic-projekt.

Tips/Råd

Du behöver inte memorera namn. Beskriv vad du vill ha ("uppgradera till .NET 10", "upgrade my EF6 code", "replace Newtonsoft.Json") och agenten läser in rätt scenario och färdigheter automatiskt. Du kan också fråga: "Vad kan du hjälpa mig med?"

Scenarier

Scenarier är agentens uppgraderingsarbetsflöden på den översta nivån. När du startar en konversation identifierar agenten det bästa scenariot för ditt mål och vägleder dig steg för steg.

Scenario Vad det gör Exempelprompt
.NET versionsuppgradering Uppgraderar projekt från alla äldre .NET till .NET 8 eller senare. "Uppgradera min lösning till .NET 10"
Konvertering i SDK-stil Konverterar äldre projektfiler till modernt SDK-format. "Konvertera mina projekt till SDK-format"
Newtonsoft.Json-uppgradering Ersätter Newtonsoft.Json med System.Text.Json i en lösning. "Uppgradera från Newtonsoft.Json"
SqlClient-uppgradering Uppgraderar System.Data.SqlClient till Microsoft. Data.SqlClient. "Uppdatera SqlClient till det moderna paketet"
Azure Functions uppgradering Uppgraderingar Azure Functions från pågående till isolerad arbetsmodell. "Uppgradera min Azure Functions"
Semantic Kernel till agenter Uppgraderingar från SK-agenter till Microsoft Agent Framework. "Uppgradera mina SK-agenter"

En genomgång från slutpunkt till slutpunkt finns i Grundläggande begrepp.

.NET versionsuppgradering

Det vanligaste scenariot. Uppgraderar dina projekt från en äldre .NET variant till den senaste:

Källa Mål
.NET Framework (valfri version) .NET 8 eller senare
.NET Core 1.x–3.x .NET 8 eller senare
.NET 5 eller senare .NET 8 eller senare

Agenten analyserar ditt beroendediagram, kontrollerar NuGet-kompatibiliteten, identifierar icke-bakåtkompatibla ändringar och skapar en uppgiftsplan med den bästa strategin för din lösning (nedifrån och upp, uppifrån och ned eller på en gång). Om dina projekt behöver formatkonverteringar hanterar agenten dem automatiskt som en del av uppgraderingen.

Konvertering i SDK-stil

Konverterar äldre .csproj filer och .vbproj filer till det moderna SDK-formatet utan att ändra målramverk. Agenten hanterar konverteringen automatiskt under versionsuppgraderingar. Kör det här scenariot separat om det behövs.

Newtonsoft.Json-uppgradering

Newtonsoft.Json Ersätter med System.Text.Json i hela lösningen. Hanterar anpassade konverterare, [JsonProperty] attribut, JObject/JArray användning och serialiseringsinställningar.

SqlClient-uppgradering

Uppgraderingar från System.Data.SqlClient till Microsoft.Data.SqlClient. Hanterar Encrypt=true standardbeteendeändring och reťazec pripojenia skillnader.

Azure Functions uppgradering

Uppgraderar Azure Functions från den pågående värdmodellen till den isolerade arbetsmodellen med Program.cs och HostApplicationBuilder. Innehåller Application Insights-uppgradering.

Semantic Kernel till Microsoft Agent Framework

Uppgraderingar från Semantic Kernel agenter (ChatCompletionAgent, OpenAIAssistantAgent) till Microsoft Agent Framework. Uppdaterar paket och API-mönster.

Uppgraderingsfärdigheter: vanliga

Allmänna uppgraderingskunskaper som gäller för olika projekttyper.

Färdighet Vad det gör
Konvertera till SDK-format Konverterar äldre projektfiler till modernt SDK-format. Använder topologisk ordning för lösningar för flera projekt.
Uppgradera autofac till .NET DI Tar bort Autofac helt och uppgraderar alla registreringar till inbyggd ASP.NET Core beroendeinmatning.
Integrera Autofac med .NET Behåller Autofac som DI-container men moderniserar sin ASP.NET Core integrering.
Uppgradera kryptografinamnområden Åtgärdar namnområdesdelningen System.Security.Cryptography för typer som X509Certificate2 och SignedCms.
Uppgradera Newtonsoft till System.Text.Json Fullständig uppgradering från Newtonsoft.Json. Hanterar konverterare, attribut, dynamiska typer och inställningar.
Uppgradera Semantic Kernel till agenter Uppgraderar Semantic Kernel agent-API:er till AI Framework för Microsoft-agenter.
Uppgradera till MSMQ. Meddelanden Uppgraderar från System.Messaging (endast .NET Framework) till MSMQ.Messaging för .NET Core.
Konvertera till central pakethantering Konverterar versionshantering för NuGet-paket per projekt till centraliserad pakethantering med .Directory.Packages.props
Modernisera C#-versionen Uppgraderar C#-kod för att använda nyare språkfunktioner (C# 7.0 till och med 15). Batchar mekaniska ändringar genom dotnet format och använder LLM-bedömning för semantiska omvandlingar.
Uppgradera null-referenser för C# Aktiverar null-referenstyper och löser systematiskt alla CS86xx-varningar. Omfattar distributionsstrategier, anteckningsvägledning och ramverksspecifika överväganden.

Uppgraderingskunskaper: dataåtkomst

Kunskaper för att uppgradera dataåtkomstlager, inklusive Entity Framework, LINQ till SQL och SQL-klientbibliotek.

Färdighet Vad det gör
Uppgradera EDMX till Code-First Konverterar EF6-Database-First-modeller (.edmx) till EF Core Code-First. Autogenerera entiteter från databasen.
Uppgradera EF DbContext Registrerar DbContext i ASP.NET Core beroendeinmatning. Hanterar både EF6 till EF Core och befintliga EF Core-mönster.
Uppgradera EF6-Code-First till EF Core Uppgraderar EF6-Code-First till EF Core. Byter paket, uppdaterar namnrymder och ersätter EntityTypeConfiguration och DbModelBuilder.
Uppgradering till Microsoft. Data.SqlClient Uppgraderingar från System.Data.SqlClient. Hanterar standardändringen Encrypt=true och reťazec pripojenia skillnader.

Uppgraderingskunskaper: webb och ASP.NET

Kunskaper för att uppgradera ASP.NET Framework-program till ASP.NET Core.

uppgradering av ASP.NET Framework

Färdighet Vad det gör
Uppgradera ASP.NET Framework till Core Omfattande uppgradering från ASP.NET Framework (MVC/WebAPI) till ASP.NET Core, inklusive kontrollanter, vyer, mellanprogram, autentisering och konfiguration.
Uppgradera ASP.NET identitet Uppgraderar ASP.NET MVC identitet till ASP.NET Core identitet, inklusive IdentityDbContext, UserManager, SignInManager och mellanprogram för autentisering.
Uppgradera Global.asax Konverterar Global.asax livscykelhändelser (Application_Start, Application_Error) till ASP.NET Core Program.cs och mellanprogram.
Uppgradera OWIN till mellanprogram Ersätter OWIN/Katana-mellanprogram (IAppBuilder, OwinMiddleware) med ASP.NET Core motsvarigheter.
Uppgradera OWIN-cookieautentisering Uppgraderar mellanprogram för OWIN-cookieautentisering till ASP.NET Core cookieautentisering.
Uppgradera OWIN OAuth till JWT Uppgraderar OWIN OAuth-ägartokenautentisering till ASP.NET Core JWT-ägarautentisering.
Uppgradera OWIN OpenID Connect Uppgraderar OWIN OpenID Connect-mellanprogram till ASP.NET Core OpenID Connect-autentisering.

MVC-funktioner

Färdighet Vad det gör
Uppgradera MVC-autentisering Uppgraderar ASP.NET MVC autentisering till ASP.NET Core mellanprogram för identitet och autentisering.
Uppgradera MVC-paketering Konverterar System.Web.Optimization paketering till direkttaggar <script>/<link> eller moderna paketerare.
Uppgradera MVC-konfiguration Uppgraderar inställningarna web.config och app.config till ASP.NET Core-konfigurationssystemet (appsettings.json, miljövariabler).
Uppgradera MVC-innehållsförhandling Uppgraderar innehållsförhandlingsmönster och formaterare till ASP.NET Core.
Uppgradera MVC-styrenheter Uppgraderar MVC- och WebAPI-styrenheter till ASP.NET Core kontrollantmönster.
Uppgradera MVC-beroendeinmatning Uppgraderar DI-containerregistreringar till ASP.NET Core inbyggda beroendeinmatning.
Uppgradera MVC-filter Konverterar globala MVC-filter (FilterConfig, GlobalFilters) till ASP.NET Core mellanprogram och filterpipeline.
Uppgradera MVC HTTP-pipeline Uppgraderar HTTP-moduler och -hanterare till ASP.NET Core mellanprogram.
Uppgradera MVC HttpContext Uppgraderar System.Web.HttpContext användning till ASP.NET Core HttpContext.
Uppgradera MVC-loggning Uppgraderar loggning till Microsoft.Extensions.Logging.
Uppgradera MVC-modellbindning Uppgraderar modellbindningsmönster till ASP.NET Core modellbindning.
Uppgradera MVC Razor-vyer Uppgraderar Razor-vyer, layouter och visningskomponenter till ASP.NET Core Razor.
Uppgradera MVC-routning Konverterar RouteCollection routning till ASP.NET Core slutpunktsroutning (MapControllerRoute, attributroutning).
Uppgradera MVC-sessionstillstånd Uppgraderar sessionstillståndet till ASP.NET Core distribuerad session.
Uppgradera statiska MVC-filer Uppgraderar hantering av statiska filer till ASP.NET Core mellanprogram för statiska filer.
Uppgradera MVC System.Web-kort Använder System.Web-kort för inkrementell uppgradering från ASP.NET Framework till ASP.NET Core.
Uppgradera MVC-validering Uppgraderar valideringsattribut och mönster för att ASP.NET Core validering.

WCF

Färdighet Vad det gör
Uppgradera WCF till CoreWCF Uppgraderar WCF-tjänster på serversidan till CoreWCF för .NET 6+. Konverterar värd-, bindningar, beteendetillägg och asynkrona kontrakt.

Uppgraderingskunskaper: moln och Azure

Färdighet Vad det gör
Uppgradering Azure Functions Start Uppgraderar Azure Functions från den pågående klassen Startup till isolerad arbetsmodell med Program.cs.
Uppgradera Azure Functions till v2 Uppgraderar Azure Functions till v2-värdmönstret med hjälp av IHostApplicationBuilder.
Uppgradering Azure Key Vault Uppgraderar äldre Azure Key Vault SDK till de moderna biblioteken Azure.Security.KeyVault.
Uppgradering Azure Service Bus Uppgraderar äldre Azure Service Bus SDK till det moderna biblioteket Azure.Messaging.ServiceBus.
Uppgradering Azure Storage Uppgraderar äldre Azure Storage SDK till de moderna biblioteken Azure.Storage.

Uppgraderingskunskaper: bibliotek

Färdighet Vad det gör
Uppgradera ADAL till MSAL Uppgraderar Azure Active Directory Authentication Library (ADAL) till Microsofts autentiseringsbibliotek (MSAL).
Uppgradering ASP.NET SignalR Uppgraderar ASP.NET SignalR till ASP.NET Core SignalR.
Uppgradera Bond-gränssnitt Uppgraderar Microsoft Bond-serialisering till moderna alternativ.
Uppgradera Data EDM till OData Uppgraderar Data.Edm typer till OData-bibliotek.
Uppgradera Data OData till OData Core Uppgraderar Microsoft.Data.OData till Microsoft.OData.Core.
Uppgradera Data Services-klienten Uppgraderar WCF Data Services-klienten till den moderna OData-klienten.
Uppgradera PowerShell SDK Uppgraderar PowerShell-moduler från Windows PowerShell 5.1 till PowerShell 7+ med paketet Microsoft.PowerShell.SDK.
Uppgradera SPA-tjänster till SPA-proxy Uppgraderar Microsoft.AspNetCore.SpaServices till SPA Proxy-värdmodellen.
Uppgradera System.Spatial Uppgraderar Microsoft.Spatial och System.Spatial till moderna rumsliga alternativ.
Uppgradera WebAPI CORS Uppgraderar System.Web.Http.Cors till ASP.NET Core CORS-mellanprogram.
Uppgradera WebAPI OData Uppgraderar WebAPI OData till ASP.NET Core OData.

När färdigheter aktiveras

Agenten läser in kunskaper progressivt när uppgraderingssessionen utvecklas:

När Vad händer
Sessionsstart Agenten läser in matchningsscenariot och eventuella kunskaper som är direkt relevanta för din kodbas.
Under körningen När agenten arbetar med uppgifter läser den in extra specialiserade kunskaper på begäran när den stöter på specifika uppgraderingsmönster, till exempel EDMX-filer, WCF-tjänster eller OWIN-mellanprogram.
Vid begäran Du kan be agenten att använda vilken kompetens som helst när som helst. Till exempel "hjälp mig att uppgradera WCF till CoreWCF" eller "använd EF6-uppgraderingsfärdigheten".

Du behöver inte hantera kompetensinläsning. Agenten hanterar den automatiskt. Beskriv bara vad du behöver.

Skapa dina egna kunskaper

Skapa anpassade kunskaper för att lära agentmönster som är specifika för din kodbas, till exempel interna ramverksuppgraderingar, kodningskonventioner eller anpassade uppgraderingsarbetsflöden.

Placera kunskaper i din lagringsplats (.github/skills/) eller användarprofil (%UserProfile%/.copilot/skills/) och agenten hämtar dem automatiskt.

Mer information om hur du skapar anpassade kunskaper finns i Tillämpa anpassade uppgraderingsinstruktioner.