Vad är GitHub Copilot uppgradering?

GitHub Copilot uppgradering är en GitHub Copilot agent som hjälper dig att uppgradera projekt till nyare versioner av .NET snabbt och säkert. Den vägleder dig genom utvärdering, lösningsrekommendationer, kodkorrigeringar och validering över Visual Studio, Visual Studio Code, GitHub Copilot CLI och GitHub.com.

Använd den här agenten för att:

  • Uppgradera till en nyare version av .NET.
  • Modernisera .NET-appen, särskilt när du uppgraderar från .NET Framework.
  • Utvärdera programmets kod, konfiguration och beroenden.
  • Verifiera att din app har skapats och testats.

Scenarios

Agenten tillhandahåller flera arbetsflöden för modernisering från slutpunkt till slutpunkt som kallas scenarier. Varje scenario är ett hanterat arbetsflöde som vägleder dig genom en viss typ av uppgradering eller migrering:

Scenario Description Exempelprompt
.NET versionsuppgradering Uppgraderingar från äldre .NET versioner till .NET 8, 9, 10 eller senare. "Uppgradera min lösning till .NET 10"
Konvertering i SDK-stil Konverterar äldre projektformat till SDK-format. "Konvertera till SDK-format"
Newtonsoft.Json-uppgradering Ersätter Newtonsoft.Json med System.Text.Json. "Uppgradera från Newtonsoft.Json"
SqlClient-uppgradering Uppgraderar från System.Data.SqlClient till Microsoft. Data.SqlClient. "Uppdatera SqlClient"
Azure Functions-uppgradering Uppgraderar Azure Functions från in-process till isolerad arbetsmodell. "Uppgradera mina Azure-funktioner"
Semantic Kernel för agenter Uppgraderar Semantic Kernel agenter till Microsoft Agent Framework. "Uppgradera mina SK-agenter"
Aspire-integrering Lägger till Aspire stöd för inner-loop och Azure-distribution. "Lägg till Aspire i min app"
Aspire versionsuppgradering Uppgraderar befintliga Aspire program till nyare versioner. "Uppgradera min Aspire version"
WebForms-to-Blazor-uppgradering Uppgraderar ASP.NET Web Forms program till Blazor. "Migrera min webbformulärapp till Blazor"

En fullständig referens till alla scenarier och över 30 inbyggda uppgraderingskunskaper finns i Scenarier och kompetensreferens.

Lämna feedback

Microsoft värdesätter din feedback och använder den för att förbättra agenten. Lämna feedback med något av följande alternativ:

Förutsättningar

Konfigurera GitHub Copilot uppgradering i utvecklingsmiljön innan du använder agenten. Installationssteg finns i Installera GitHub Copilot uppgradering.

Uppgradera .NET-projekt

Uppgraderingsagenten stöder uppgradering av C# och Visual Basic projekt av följande typer:

  • ASP.NET Core (och relaterade tekniker som MVC, Razor Pages och Webb-API)
  • ASP.NET webbformulär
  • Blazor
  • Azure Functions
  • Windows Presentation Foundation (WPF)
  • Windows Forms
  • WinUI
  • .NET MAUI och Xamarin
  • Klassbibliotek
  • Konsolappar
  • Testprojekt (MSTest, NUnit och xUnit)

Information om hur du startar en uppgradering finns i Uppgradera en .NET app med GitHub Copilot uppgradering.

Uppgraderingsvägar som stöds

Agenten stöder följande uppgraderingssökvägar:

Source Target
.NET Framework (vilken som helst version) .NET 8 eller senare
.NET Framework (vilken som helst version) .NET Framework 4.8.1
.NET Core 1.x–3.x .NET 8 eller senare
.NET 5 eller senare .NET 8 eller senare

Migrera .NET-projekt till Azure

Om du vill migrera dina .NET program till Azure använder du GitHub Copilot moderniseringsagenten. Moderniseringsagenten hanterar Azure scenarier som databasmigrering, lagring, identitet, meddelanden och distribution.

Övervaka uppgraderingar med instrumentpanelen

Instrumentpanelen Uppgradera ger en visuell vy över en uppgraderingssession i GitHub Copilot CLI och GitHub Copilot app. Använd dess paneler för att spåra övergripande förlopp, scenarier, uppgifter, projekt, beroenden, utvärderingsresultat, uppgraderingsalternativ och agentaktivitet.

Om du vill öppna instrumentpanelen ber du Copilot att visa den under en uppgraderingssession. Instrumentpanelen är för närvarande inte tillgänglig i Visual Studio, Visual Studio Code eller andra IDE:er. Mer information om varje panel finns i Övervaka uppgraderingar med instrumentpanelen för uppgradering.

Så här fungerar det

Information om hur du startar en uppgraderings- eller migreringsprocess finns i:

  1. Starta agenten med någon av följande metoder:

    • Visual Studio: Högerklicka på lösningen eller projektet i Prieskumník riešení och välj Modernize. Du kan också öppna GitHub-Copilot Chat-fönstret och skriva @Modernize.
    • Visual Studio Code: Öppna panelen GitHub Copilot Chat och skriv @upgrade.
    • GitHub Copilot CLI: Skriv @upgrade följt av din uppgraderings- eller migreringsbegäran.
    • GitHub Copilot-appen: I agentväljaren väljer du Upgrade.
  2. Tala om för agenten vad som ska uppgraderas eller migreras.

När du ber uppgraderingsagenten att uppgradera din app uppmanar Copilot dig först att skapa en ny gren om du arbetar på en Git-lagringsplats. Sedan utvärderar Copilot projektet och kör ett arbetsflöde i tre steg. Varje steg skapar Markdown-filer under .github/upgrades/{scenarioId} på lagringsplatsen så att du kan granska vad som kommer härnäst innan du fortsätter. Om .github/upgrades/{scenarioId} redan finns från ett tidigare försök frågar Copilot om du vill fortsätta eller börja om på nytt.

Copilot börjar med att undersöka projektstrukturen, beroendena och kodmönstren för att skapa en omfattande utvärdering. Filen assessment.md listar kritiska ändringar, API-kompatibilitetsproblem, avrådda mönster och uppgraderingsomfånget.

Efter utvärderingen kör Copilot följande tre steg:

  1. Assessment: Copilot undersöker projektstrukturen, beroendena och kodmönstren och presenterar sedan strategibeslut för din granskning, till exempel uppgraderingsstrategin (nedifrån och upp, uppifrån och ned eller på en gång), projektuppgraderingsmetod, teknikmoderniseringsalternativ och kompatibilitetshantering. Copilot sparar bekräftade beslut till upgrade-options.md.

  2. Planning: Copilot konverterar utvärderingen och dina bekräftade alternativ till en detaljerad specifikation. Filen plan.md dokumenterar uppgraderingsstrategier, refaktoriseringsmetoder, beroendesökvägar och riskreducering.

  3. Execution: Copilot delar upp planen i sekventiella, konkreta uppgifter med valideringskriterier i tasks.md. Varje uppgift beskriver en enda ändring och hur Copilot bekräftar att den lyckades.

Redigera någon av Markdown-filerna i .github/upgrades/{scenarioId} för att justera uppgraderingsstegen eller lägga till kontext innan du går vidare.

Uppgraderingsstrategier

Under utvärderingsfasen utvärderar agenten din lösning och rekommenderar en av följande strategier:

Strategi Bäst för Description
Nedifrån och upp Stora lösningar med djupa beroendediagram Uppgraderar lövprojekt först och fortsätter sedan uppåt.
Uppifrån och ned Snabb feedback om huvudprogrammet Uppgraderar programprojektet först och åtgärdar sedan beroenden.
Allt-på-en-gång Små, enkla lösningar Uppgraderar alla projekt i ett enda pass.

Flödeslägen

Agenten stöder två flödeslägen som styr hur mycket den pausar för dina indata:

  • Automatisk: Agenten arbetar igenom alla steg utan att pausa och stoppa endast vid äkta blockerare. Bäst för erfarna användare och enkla uppgraderingar.
  • Guidade: Agenten pausar vid varje steggräns så att du kan granska utvärderingen, planen och uppgifterna innan du fortsätter. Bäst för förstagångsanvändare och komplexa lösningar.

Växla mellan lägen när som helst genom att säga "pausa" (för att ange guidat läge) eller "fortsätt" (för att ange automatiskt läge).

Statushantering

Agenten lagrar alla uppgraderingstillstånd i .github/upgrades/{scenarioId}/. Mappen innehåller:

Fil Purpose
assessment.md Analys av din lösning
upgrade-options.md Bekräftade uppgraderingsbeslut
plan.md Ordnad aktivitetsplan
tasks.md Instrumentpanel för live-förlopp
scenario-instructions.md Agentens beständiga minne, inklusive inställningar, beslut och anpassade instruktioner
tasks/{taskId}/task.md Omfång och kontext per aktivitet
tasks/{taskId}/progress-details.md Utförande av uppgift-specifika kommentarer och resultat

Eftersom alla tillstånd finns i den här mappen kan du stänga din IDE, växla mellan sessioner eller till och med växla mellan utvecklingsmiljöer (till exempel starta i VS Code och fortsätta i Visual Studio). Agenten fortsätter där den slutade.

Tip

Lägg till mappen .github/upgrades/ i din gren. Det bekräftade tillståndet fungerar som en säkerhetskopia och låter teammedlemmar visa uppgraderingsstatus.

Genomför uppgraderingen

När varje steg är klart granskar och ändrar du de genererade filerna efter behov och uppmanar sedan Copilot att fortsätta till nästa steg.

När du når fasen Execution ber du Copilot starta uppgraderingen. Om Copilot stöter på ett problem försöker det identifiera orsaken och tillämpa en korrigering. Om Copilot inte kan åtgärda problemet ber det om din hjälp. När du ingriper lär Copilot dig av de ändringar du gör och försöker tillämpa dem automatiskt om problemet uppstår igen.

Uppgraderingsresultat

När Copilot kör varje uppgift uppdateras filen tasks.md i .github/upgrades/{scenarioId} med status för varje steg. Övervaka förloppet genom att granska den här filen. Copilot skapar en Git-incheckning för varje del av processen, så att du kan återställa ändringar eller granska vad som har ändrats.

När uppgraderingen är klar visar Copilot nästa steg i chattsvaret.

Telemetry

Verktyget samlar in data om projekttyper, avsikten att uppgradera och uppgraderingens varaktighet. Utvecklingsmiljön samlar in och aggregerar data och innehåller ingen användar identifierbar information. Mer information om Microsofts sekretesspolicy finns i Visual Studio Customer Experience Improvement Program.