Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Modernizace s GitHub Copilot je agent GitHub Copilot, který pomáhá upgradovat projekty na novější verze .NET a rychle a sebevědomě migrovat .NET aplikace na Azure. Provede vás posouzením, doporučeními k řešení, opravami kódu a ověřováním napříč Visual Studio, Visual Studio Code, rozhraním příkazového řádku GitHub Copilot a GitHub.com.
Tento agent použijte k:
- Upgradujte na novější verzi .NET.
- Migrujte technologie a nasaďte je do Azure.
- Modernizovat .NET aplikaci, zejména při upgradu z .NET Frameworku.
- Vyhodnoťte kód, konfiguraci a závislosti aplikace.
- Naplánujte a nastavte správný Azure zdroj.
- Opravte problémy a použijte osvědčené postupy pro migraci do cloudu.
- Ověřte, že se vaše aplikace úspěšně sestaví a testuje.
Scénáře
Agent poskytuje několik komplexních pracovních postupů modernizace označovaných jako scénáře. Každý scénář je spravovaný pracovní postup, který vás provede konkrétním typem upgradu nebo migrace:
| Scénář | Description | Příklad výzvy |
|---|---|---|
| aktualizace verze .NET | Upgraduje ze starších verzí .NET na .NET 8, 9, 10 nebo novější. | Aktualizujte moje řešení na .NET 10 |
| Převod stylu sady SDK | Převede starší formát projektu na styl sady SDK. | "Převést na styl sady SDK" |
| Aktualizace Newtonsoft.Json | Nahradí Newtonsoft.Json System.Text.Json. | Aktualizace z Newtonsoft.Json |
| Upgrade SqlClient | Upgraduje z System.Data.SqlClient na Microsoft. Data.SqlClient. | "Aktualizace SqlClient" |
| Aktualizace Azure Functions | Upgraduje Azure Functions z procesu na izolovaný pracovní model. | Aktualizovat moje Azure Functions |
| Sémantické jádro k agentům | Upgraduje agenty Sémantické jádro na Microsoft Agent Framework. | Upgrade agentů SK |
Úplný přehled všech scénářů a 30 integrovaných dovedností upgradu najdete v referenčních informacích ke scénářům a dovednostem.
Poskytnutí zpětné vazby
Microsoft hodnotí vaši zpětnou vazbu a používá ji ke zlepšení agenta. Napište nám svůj názor pomocí některé z těchto možností:
V Visual Studio použijte funkci Suggestovat funkci a Sehlásit problém.
Vytvořte problém v úložišti @modernize-dotnet GitHub.
Požadavky
Před použitím agenta nastavte GitHub Copilot modernizaci ve vývojovém prostředí. Postup instalace najdete v části Modernizace GitHub Copilot.
Aktualizace projektů .NET
Agent modernizace podporuje upgrade projektů C# a Visual Basic následujících typů:
- ASP.NET Core (a související technologie, jako jsou MVC, Razor Pages a webové rozhraní API)
- Blazor
- Azure Functions
- Windows Presentation Foundation (WPF (Windows Presentation Foundation))
- model Windows Forms
- WinUI
- .NET MAUI a Xamarin
- Knihovny tříd
- Aplikace konzoly
- Projekty testů (MSTest, NUnit a xUnit)
Pokud chcete spustit upgrade, podívejte se na Upgrade aplikace .NET pomocí modernizace GitHub Copilot.
Podporované cesty upgradů
Agent podporuje následující cesty upgradu:
| Zdroj | Target |
|---|---|
| .NET Framework (libovolná verze) | .NET 8 nebo novější |
| .NET Core 1.x–3.x | .NET 8 nebo novější |
| .NET 5 nebo novější | .NET 8 nebo novější |
Migrace projektů .NET do Azure
Agent modernizace zjednodušuje migraci Azure prostřednictvím automatizované analýzy, oprav kódu řízených umělou inteligencí, kontrol sestavení a zranitelností a automatizace nasazení.
Analýza a inteligentní doporučení
Vyhodnoťte připravenost aplikace na Azure migraci a získejte přizpůsobené pokyny na základě závislostí a zjištěných problémů.
Náprava kódu využívajícího AI
Použijte předdefinované vzory kódu osvědčených postupů pro zrychlení modernizace s minimálním ručním úsilím.
Automatické sestavení a řešení CVE
Sestavte aplikaci a vyřešte chyby kompilace a ohrožení zabezpečení a zjednodušte vývoj.
Bezproblémové nasazení
Nasaďte ho do Azure a kód z vývoje do produkčního prostředí urychlíte.
Předdefinované úlohy pro migraci
GitHub Copilot modernizace pro .NET nabízí předdefinované úlohy, které zachycují osvědčené postupy v odvětví a pokrývají běžné scénáře migrace.
Migrujte na databázi založenou na Spravované identitě v Azure, včetně Azure SQL DB, Azure SQL MI a Azure PostgreSQL
Modernizujte datovou vrstvu migrací z místních nebo starších databází (například DB2, Oracle DB nebo SQL Server) na Azure SQL DB, Azure SQL Managed Instance nebo Azure PostgreSQL. Používejte zabezpečené ověřování spravovaných identit.
Migrace do úložiště souborů Azure
Přesuňte vstupně-výstupní operace souborů z místního systému souborů do Azure File Storage pro škálovatelnou cloudovou správu souborů.
Migrovat na úložiště Azure Blob
Nahraďte místní úložiště objektů nebo úložiště objektů napříč cloudy či vstupně-výstupní operace místního systému souborů úložištěm Azure Blob Storage pro nestrukturovaná data.
Migrujte na Microsoft Entra ID
Přechod ověřování a autorizace z Windows služba Active Directory na Microsoft Entra ID (dříve Azure AD) pro moderní správu identit
Migrace k zabezpečeným přihlašovacím údajům pomocí spravované identity a Azure Key Vault
Nahraďte přihlašovací údaje ve formátu prostého textu v konfiguraci nebo kódu zabezpečenými, spravovanými identitami a Azure Key Vault pro správu tajných kódů.
Migrace do Azure Service Bus
Přechod ze starších front zpráv nebo front zpráv třetích stran (například MSMQ nebo RabbitMQ) nebo Amazon SQS (AWS Simple Queue Service) k Azure Service Bus pro spolehlivé cloudové zasílání zpráv.
Migrovat na e-mailovou službu Azure Communication Service
Přímé odesílání e-mailů SMTP nahraďte službou Azure Communication Service pro škálovatelné zabezpečené doručování e-mailů.
Migrace do centra událostí Confluent Cloud/Azure pro Apache Kafka
Přechod z místního nebo na místě systému Kafka na spravované streamování událostí pomocí platformy Confluent Cloud nebo Azure Event Hubs.
Migrujte na OpenTelemetry na Azure
Přechod z místních protokolovacích architektur, jako jsou log4net, Serilog a Windows protokol událostí na OpenTelemetry na Azure.
Migrace do Azure Cache for Redis pomocí spravované identity
Nahraďte implementace mezipaměti Redis uchovávanou v paměti nebo místní mezipaměti s Azure Cache for Redis, abyste zajistili vysokou dostupnost, škálovatelnost a zabezpečení podnikového stupně.
Jak to funguje
Postup spuštění upgradu nebo migrace najdete v tématu:
Otevřete projekt nebo řešení .NET ve vývojovém prostředí.
Spusťte agenta některou z těchto metod:
-
Visual Studio: Klikněte pravým tlačítkem na řešení nebo projekt v Průzkumník řešení a vyberte Modernize. Nebo otevřete okno GitHub Copilot Chat a zadejte
@Modernize. -
Visual Studio Code: Otevřete panel GitHub Copilot Chat a zadejte
@modernize-dotnet. -
GitHub Copilot CLI: Zadejte
@modernize-dotneta potom požadavek na upgrade nebo migraci. -
GitHub.com: Použijte agenta kódování
modernize-dotnetv úložišti.
-
Visual Studio: Klikněte pravým tlačítkem na řešení nebo projekt v Průzkumník řešení a vyberte Modernize. Nebo otevřete okno GitHub Copilot Chat a zadejte
Sdělete agentovi, co chcete upgradovat nebo migrovat.
Když se zeptáte agenta modernizace, aby aplikaci upgradoval, Copilot vás nejdřív vyzve k vytvoření nové větve, pokud pracujete v úložišti Git. Pak Copilot vyhodnocuje váš projekt a spouští třífázový pracovní postup. Každá fáze vytvoří soubory .github/upgrades/{scenarioId} Markdownu ve vašem úložišti, abyste si mohli před pokračováním prohlédnout, co se stane dál. Pokud .github/upgrades/{scenarioId} již existuje z předchozího pokusu, Copilot se zeptá, jestli chcete pokračovat nebo začít znovu.
Copilot začne zkoumáním struktury projektu, závislostí a vzorů kódu a sestavením komplexního posouzení. Soubor assessment.md obsahuje seznam zásadních změn, problémy s kompatibilitou rozhraní API, zastaralé vzory a obor upgradu.
Po posouzení Copilot spustí následující tři fáze:
Assessment: Copilot prozkoumá strukturu projektu, závislosti a vzory kódu a následně prezentuje rozhodnutí o strategii kontroly, jako je strategie upgradu (shora nahoru, shora dolů nebo vše najednou), přístup k upgradu projektu, možnosti modernizace technologií a zpracování kompatibility. Copilot uloží potvrzená rozhodnutí do
upgrade-options.md.Planning: Copilot převede posouzení a potvrzené možnosti na podrobnou specifikaci. Soubory
plan.mddokumentují strategie upgradu, přístupy refaktoringu, cesty závislostí a zmírnění rizik.Execution: Copilot rozdělí plán na postupné konkrétní úkoly s ověřovacími kritérii v
tasks.md. Každý úkol popisuje jednu změnu a to, jak Copilot potvrdí, že byla úspěšná.
Upravte libovolný soubor Markdownu .github/upgrades/{scenarioId} a upravte kroky upgradu nebo přidejte kontext před tím, než přejdete vpřed.
Strategie upgradu
Během fáze posouzení agent vyhodnotí vaše řešení a doporučí jednu z těchto strategií:
| Strategie | Nejvhodnější pro | Description |
|---|---|---|
| Zdola nahoru | Rozsáhlá řešení s hlubokými grafy závislostí | Nejprve upgraduje koncové projekty, pak pokračuje směrem nahoru. |
| Shora dolů | Rychlá zpětná vazba k hlavní aplikaci | Nejprve upgraduje projekt aplikace a pak opraví závislosti. |
| Vše najednou | Malá, jednoduchá řešení | Aktualizuje všechny projekty najednou. |
Režimy toku
Agent podporuje dva režimy průběhu procesů, které řídí, jak často se pozastaví pro vaši zpětnou vazbu.
- Automatické: Agent funguje ve všech fázích bez pozastavení a zastavuje se pouze na pravých blokovačích. Nejvhodnější pro zkušené uživatele a jednoduché upgrady.
- Vedené: Agent se pozastaví na jednotlivých hranicích fáze, abyste mohli před pokračováním zkontrolovat hodnocení, plán a úkoly. Nejvhodnější pro první uživatele a složitá řešení.
Mezi režimy můžete kdykoli přepínat tak, že řeknete "pozastavit" (pro vstup do režimu s asistencí) nebo "pokračovat" (pokud chcete přejít do automatického režimu).
Správa stavu
Agent ukládá veškerý stav upgradu do .github/upgrades/{scenarioId}/. Složka obsahuje:
| Soubor | Purpose |
|---|---|
assessment.md |
Analýza vašeho řešení |
upgrade-options.md |
Potvrzená rozhodnutí o upgradu |
plan.md |
Uspořádaný plán úkolů |
tasks.md |
Řídicí panel aktuálního průběhu |
scenario-instructions.md |
Trvalá paměť agenta, včetně předvoleb, rozhodnutí a vlastních pokynů |
execution-log.md |
Podrobný záznam auditu všech změn |
tasks/{taskId}/task.md |
Rozsah a kontext pro jednotlivé úkoly |
tasks/{taskId}/progress-details.md |
Poznámky ke spuštění jednotlivých úkolů a výsledky |
Protože jsou všechny stavy uloženy v této složce, můžete zavřít IDE, přecházet mezi relacemi nebo dokonce přepínat mezi vývojovými prostředími (například začít ve VS Code a pokračovat ve Visual Studiu). Agent se zvedne tam, kde to skončilo.
Návod
Potvrďte složku .github/upgrades/ do své větve. Záložní stav slouží jako záloha a umožňuje členům týmu zobrazit průběh aktualizace.
Provedení upgradu
Po dokončení každé fáze zkontrolujte a upravte vygenerované soubory podle potřeby a pak řekněte Copilot, aby pokračovali v další fázi.
Jakmile se dostanete do fáze Execution, sdělte Copilot, že chcete spustit upgrade. Pokud Copilot narazí na problém, pokusí se identifikovat příčinu a použít opravu. Pokud Copilot problém nedokáže opravit, požádá o pomoc. Když dojde k zásahu, Copilot se naučí od provedených změn a pokusí se je automaticky použít, pokud se problém objeví znovu.
Výsledky aktualizace
Když Copilot spouští jednotlivé úlohy, aktualizuje tasks.md soubor v .github/upgrades/{scenarioId} se stavem každého kroku. Monitorujte průběh kontrolováním tohoto souboru. Copilot vytvoří potvrzení Gitu pro každou část procesu, takže můžete vrátit změny zpět nebo zkontrolovat, co se změnilo.
Po dokončení upgradu Copilot v odpovědi chatu zobrazí další kroky.
Telemetrie
Nástroj shromažďuje data o typech projektů, záměru upgradovat a dobu trvání upgradu. Vývojové prostředí shromažďuje a agreguje data a neobsahuje žádné identifikovatelné informace uživatele. Další informace o zásadách ochrany osobních údajů Microsoft najdete v tématu Visual Studio Program zlepšování zákaznických zkušeností.
Související obsah
- Instalace modernizace GitHub Copilotu
- Upgrade aplikace .NET pomocí modernizace GitHub Copilot
- Základní koncepty
- Referenční informace ke scénářům a dovednostem
- Osvědčené postupy
- Řešení problémů s modernizací GitHub Copilot
- Quickstart: Migrace projektu .NET do Azure
- GitHub Copilot nejčastější dotazy k modernizaci