Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A GitHub Copilot modernizáció egy GitHub Copilot ügyfél, amely segít a projekteket frissebb .NET verziókra frissíteni és a .NET alkalmazásokat gyorsan, magabiztosan az Azure-ra migrálni. Végigvezeti az értékelésen, a megoldási javaslatokon, a kódjavításokon és az ellenőrzésen a Visual Studio, a Visual Studio Code, a GitHub Copilot parancssori felületén és a GitHub.com-on.
Használja ezt az ügynököt a következőre:
- Frissítsen a .NET újabb verziójára.
- Technológiák áttelepítése és üzembe helyezése az Azure-ra.
- Modernizálja a .NET alkalmazást, különösen .NET-keretrendszerről való frissítéskor.
- Mérje fel az alkalmazás kódját, konfigurációját és függőségeit.
- Tervezze meg és állítsa be a megfelelő Azure erőforrást.
- Javítsa ki a problémákat, és alkalmazza a felhőbe való migrálás ajánlott eljárásait.
- Ellenőrizze, hogy az alkalmazás sikeresen épül-e és tesztel-e.
Lehetséges helyzetek
Az ügynök több, végponttól végpontig tartó modernizálási munkafolyamatot, úgynevezett forgatókönyveket biztosít. Minden forgatókönyv egy felügyelt munkafolyamat, amely végigvezeti önt egy adott frissítési vagy migrálási típuson:
| Scenario | Leírás | Példakérés |
|---|---|---|
| .NET verziófrissítés | Frissítés a régebbi .NET verziókról a 8-.NET 9-re, 10-re vagy újabbra. | "A megoldás frissítése a .NET 10 verzióra" |
| SDK-stílusú átalakítás | Az örökölt projektformátumot SDK-stílusúvá alakítja. | "Konvertálás SDK-stílusra" |
| Newtonsoft.Json frissítés | A Newtonsoft.Json helyére System.Text.Json lép. | "Frissítés a Newtonsoft.Json-ról" |
| SqlClient-frissítés | Frissítések a System.Data.SqlClientről a Microsoft.Data.SqlClientre. | "SqlClient frissítése" |
| Azure Functions frissítés | Az Azure Functions frissítése a folyamaton belüli modellről izolált feldolgozói modellre. | "Az Azure Functions-öm frissítése" |
| Szemantikus kernel ügynököknek | Frissíti a Szemantikus kernel ügynököket a Microsoft ügynök-keretrendszerre. | "Az SK-ügynökeim frissítése" |
Az összes forgatókönyv és a 30+ beépített frissítési képesség teljes körű ismertetését lásd: Forgatókönyvek és készségek referenciája.
Visszajelzés küldése
Microsoft értékeli a visszajelzést, és az ügynök továbbfejlesztésére használja. Küldjön visszajelzést az alábbi lehetőségek egyikével:
A Visual Studio-ban használja a Javasoljon egy funkciót és Probléma jelentése lehetőségeket.
Jelentse be a problémát a @modernize-dotnet GitHub adattárban.
Előfeltételek
Az ügynök használata előtt állítsa be GitHub Copilot modernizálást a fejlesztői környezetben. A telepítés lépéseit a Install GitHub Copilot modernizálás című témakörben találja.
.NET-projektek frissítése
A modernizálási ügynök támogatja a C# és Visual Basic következő típusú projektek frissítését:
- ASP.NET Core (és a kapcsolódó technológiák, például az MVC, a Razor Pages és a Webes API)
- Blazor
- Azure-funkciók
- Windows megjelenítési alaprendszer (WPF)
- Windows Forms
- WinUI
- .NET MAUI és Xamarin
- Osztálykönyvtárak
- Konzolalkalmazások
- Tesztprojektek (MSTest, NUnit és xUnit)
Frissítés indításához lásd: A .NET-alkalmazások frissítése GitHub Copilot modernizálással.
Támogatott frissítési útvonalak
Az ügynök a következő frissítési útvonalakat támogatja:
| Forrás | Target |
|---|---|
| .NET Keretrendszer (bármely verzió) | .NET 8 vagy újabb |
| .NET Core 1.x–3.x | .NET 8 vagy újabb |
| .NET 5 vagy újabb | .NET 8 vagy újabb |
.NET-projektek migrálása Azure
A modernizálási ügynök leegyszerűsíti Azure migrálást az automatizált elemzés, az AI-alapú kód szervizelése, a build- és biztonságirés-ellenőrzések, valamint az üzembe helyezés automatizálása révén:
Elemzés és intelligens javaslatok.
Felmérheti, hogy az alkalmazás készen áll-e a Azure migrálásra, és a függőségei és az azonosított problémák alapján személyre szabott útmutatást kap.
AI-alapú kód szervizelése.
Előre definiált ajánlott eljáráskódminták alkalmazása a modernizáció felgyorsításához minimális manuális erőfeszítéssel.
Automatikus buildelés és CVE-felbontás.
Készítse el az alkalmazást, és oldja meg a fordítási hibákat és biztonsági réseket, és egyszerűsítse a fejlesztést.
Zökkenőmentes üzembe helyezés.
Üzembe helyezés az Azure-ban, a kód gyorsan a fejlesztési szakaszból az éles környezetbe kerül.
Előre definiált feladatok a migráláshoz
GitHub Copilot .NET modernizálása előre meghatározott feladatokat kínál, amelyek rögzítik az iparág ajánlott eljárásait, és lefedik a gyakori migrálási forgatókönyveket.
Migrálás a kezelt identitás alapú adatbázisra az Azure-on, kezelével az Azure SQL DB, Azure SQL MI és Azure PostgreSQL
Az adatréteg modernizálása helyszíni vagy örökölt adatbázisokból (például DB2, Oracle DB vagy SQL Server) Azure SQL ADATBÁZISba, Azure SQL Managed Instance vagy Azure PostgreSQL-be való migrálással. Biztonságos felügyelt identitáshitelesítés használata.
Migrate to Azure File Storage
Helyezze át a fájl I/O-műveleteit a helyi fájlrendszerből a Azure Fájltárolóba méretezhető, felhőalapú fájlkezeléshez.
Migrate to Azure Blob Storage
Váltsa fel a helyszíni, vagy a felhőközi objektumtárolót, vagy a helyi fájlrendszer fájl I/O-műveletét Azure Blob Storage-ra a strukturálatlan adatok tárolásához.
Frissítés a Microsoft Entra ID-re
A modern identitáskezeléshez váltsa át a hitelesítést és az engedélyezést a Windows Active Directory-ről a Microsoft Entra ID -ra (korábban Azure AD-be).
Váltson biztonságos hitelesítő adatokra a Felügyelt Identitás és az Azure Key Vault használatával
Cserélje le az egyszerű szöveges hitelesítő adatokat a konfigurációban vagy a kódban biztonságos, felügyelt identitásokra, és az Azure Key Vault segítségével kezelje a titkokat.
Migrate to Azure Service Bus
Váltson az Amazon SQS-ről (AWS Simple Queue Service), valamint az örökölt vagy harmadik fél által biztosított üzenetküldési sorokról (mint például MSMQ vagy RabbitMQ) a megbízható, felhőalapú üzenettovábbítást biztosító Azure Service Bus-ra.
Migráljon az Azure Communication Service e-mailre
Cserélje le a közvetlen SMTP-e-mailek küldését Azure Kommunikációs szolgáltatásra a méretezhető, biztonságos e-mail-kézbesítés érdekében.
Migrate to Confluent Cloud/Azure Event Hub for Apache Kafka
Váltás helyi vagy helyszíni Kafkáról felügyelt eseménystreamelésre a Confluent Cloud vagy Azure Event Hubs használatával.
Migrálás az OpenTelemetry-re az Azure-on
Váltás a helyi naplózási keretrendszerekről, például a log4netről, a Serilogról és Windows eseménynaplóról az OpenTelemetryre Azure.
Áttelepítés az Azure Cache for Redis-be felügyelt identitással
Cserélje le a memóriabeli vagy helyi Redis Cache-implementációkat a magas rendelkezésre állás, a méretezhetőség és a nagyvállalati szintű biztonság érdekében Azure Cache for Redis.
Hogyan működik?
Frissítési vagy migrálási folyamat elindításához lásd:
Nyissa meg a .NET projektet vagy megoldást a fejlesztési környezetben.
Indítsa el az ügynököt az alábbi módszerek egyikével:
-
Visual Studio: Kattintson a jobb gombbal a megoldásra vagy projektre a Megoldáskezelő és válassza a Modernize lehetőséget. Vagy nyissa meg a GitHub Copilot Chat ablakot, és írja be a
@Modernize. -
Visual Studio Code: Nyissa meg a GitHub Copilot Chat panelt, és írja be a
@modernize-dotnet. -
GitHub Copilot parancssori felület: Írja be a
@modernize-dotnet, majd a frissítési vagy migrálási kérést. -
GitHub.com: Használja a
modernize-dotnetkódolóügynököt az adattárban.
-
Visual Studio: Kattintson a jobb gombbal a megoldásra vagy projektre a Megoldáskezelő és válassza a Modernize lehetőséget. Vagy nyissa meg a GitHub Copilot Chat ablakot, és írja be a
Mondja el az ügynöknek, hogy mit frissítsen vagy migráljon.
Amikor megkéri a modernizációs ügynököt az alkalmazásának frissítésére, a Copilot először arra kéri, hogy hozzon létre egy új ágat, ha egy Git-adattárban dolgozik. Ezután Copilot értékeli a projektet, és futtat egy háromfázisú munkafolyamatot. Minden fázis Markdown-fájlokat .github/upgrades/{scenarioId} hoz létre az adattárában, így a folytatás előtt áttekintheti, mi következik. Ha .github/upgrades/{scenarioId} már létezik egy korábbi kísérletből, Copilot megkérdezi, hogy folytatja-e a műveletet, vagy kezdjen-e újra.
Copilot a projekt struktúrájának, függőségeinek és kódmintáinak vizsgálatával kezdődik, hogy átfogó értékelést hozzon létre. A assessment.md fájl felsorolja a kompatibilitástörő változásokat, az API kompatibilitási problémáit, az elavult mintákat és a frissítési hatókört.
Az értékelés után Copilot a következő három szakaszt futtatja:
Assessment: Copilot megvizsgálja a projektstruktúrát, a függőségeket és a kódmintákat, majd bemutatja a felülvizsgálathoz szükséges stratégiai döntéseket, például a frissítési stratégiát (alulról felfelé, felülről lefelé vagy egyszerre), a projektfrissítési megközelítést, a technológia modernizálási lehetőségeit és a kompatibilitás kezelését. Copilot mentette a megerősített döntéseket
upgrade-options.md.Planning: Copilot az értékelést és a megerősített beállításokat részletes specifikációvá alakítja. A
plan.mdfájl a frissítési stratégiákat, a megközelítések újrabontását, a függőségi útvonalakat és a kockázatcsökkentéseket dokumentálja.Execution: Copilot a tervet szekvenciális, konkrét tevékenységekre bontja
tasks.mdérvényesítési feltételekkel. Minden tevékenység egyetlen módosítást ír le, és azt, hogy Copilot hogyan erősíti meg a sikerességét.
A frissítési lépések módosításához vagy a kontextus hozzáadásához szerkessze bármelyik Markdown-fájlt .github/upgrades/{scenarioId} mielőtt továbblépne.
Frissítési stratégiák
Az értékelési szakaszban az ügynök kiértékeli a megoldást, és az alábbi stratégiák egyikét javasolja:
| Stratégia | A következőkre alkalmas | Leírás |
|---|---|---|
| Alulról felfelé | Nagy megoldások mély függőségi gráfokkal | Először a hierarchia alján lévő projekteket frissíti, majd halad felfelé. |
| Felülről lefelé | Gyors visszajelzés a fő alkalmazásról | Először frissíti az alkalmazásprojektet, majd kijavítja a függőségeket. |
| Egyszerre | Kicsi, egyszerű megoldások | Az összes projektet egy lépésben frissíti. |
Folyamatmódok
Az ügynök két olyan folyamatmódot támogat, amelyek szabályozzák, hogy mennyi ideig szünetel a bemenet:
- Automatikus: Az ügynök az összes fázisban szüneteltetés nélkül működik, és csak a valódi blokkolóknál áll meg. Tapasztalt felhasználók és egyszerű frissítések esetén a legjobb.
- Vezetett: Az ügynök minden fázishatárnál megáll, így a folytatás előtt átnézheti a tervet, az értékelést és a feladatokat. Első alkalommal használt felhasználók és összetett megoldások esetén a legjobb.
Váltson a módok között bármikor a "szüneteltetés" (irányított mód beírásához) vagy a "folytatás" (az automatikus mód megadásához).
Állapotkezelés
Az ügynök az összes frissítési állapotot a következő helyen .github/upgrades/{scenarioId}/tárolja: . A mappa a következőket tartalmazza:
| fájl | Alkalmazás célja |
|---|---|
assessment.md |
A megoldás elemzése |
upgrade-options.md |
Megerősített frissítési döntések |
plan.md |
Rendezett tevékenységterv |
tasks.md |
Élő folyamat irányítópultja |
scenario-instructions.md |
Az ügynök állandó memóriája, beleértve a beállításokat, a döntéseket és az egyéni utasításokat |
execution-log.md |
Az összes változás részletes auditnaplója |
tasks/{taskId}/task.md |
Tevékenységenkénti hatókör és környezet |
tasks/{taskId}/progress-details.md |
Feladatonkénti végrehajtási jegyzetek és eredmények |
Mivel minden állapot ebben a mappában található, bezárhatja az IDE-t, válthat a munkamenetek között, vagy válthat a fejlesztési környezetek között (például a VS Code-ban kezdheti, és folytathatja a Visual Studio). Az ügynök ott veszi fel, ahol abbahagyta.
Jótanács
Véglegesítse a .github/upgrades/ mappát az ágon. A véglegesített állapot biztonsági mentésként szolgál, és lehetővé teszi a csapattagok számára a frissítés előrehaladásának megtekintését.
A frissítés végrehajtása
Az egyes fázisok befejezése után szükség szerint tekintse át és módosítsa a létrehozott fájlokat, majd mondja meg Copilot, hogy folytassa a következő szakaszt.
Amikor eléri a Execution szakaszt, kérje meg Copilot, hogy indítsa el a frissítést. Ha Copilot problémába ütközik, megpróbálja azonosítani az okot, és kijavítani. Ha Copilot nem tudja kijavítani a problémát, segítséget kér. Amikor beavatkozik, Copilot tanul a végrehajtott módosításokból, és megpróbálja automatikusan alkalmazni őket, ha a probléma ismét felmerül.
A frissítés eredményei
Mivel Copilot minden feladatot futtat, a tasks.md.github/upgrades/{scenarioId} fájlját frissíti minden lépés állapotával. A fájl áttekintésével monitorozza az előrehaladást. Copilot létrehoz egy Git-véglegesítést a folyamat minden részére, így visszaállíthatja a módosításokat, vagy áttekintheti a módosításokat.
Amikor a frissítés befejeződik, Copilot megjeleníti a következő lépéseket a csevegési válaszban.
Telemetria
Az eszköz adatokat gyűjt a projekttípusokról, a frissítési szándékról és a frissítés időtartamáról. A fejlesztői környezet összegyűjti és összesíti az adatokat, és nem tartalmaz felhasználó által azonosítható információkat. További információ Microsoft adatvédelmi szabályzatáról: Visual Studio Customer Experience Improvement Program.
Kapcsolódó tartalom
- Telepítse a GitHub Copilot modernizálási csomagot
- Frissíts egy .NET alkalmazást a GitHub Copilot segítségével történő modernizálással
- Alapfogalmak
- Forgatókönyvek és készségek referenciája
- Ajánlott eljárások
- A GitHub Copilot hibaelhárítása
- Gyorsútmutató: .NET-projekt migrálása az Azure-ra
- GitHub Copilot modernizálással kapcsolatos gyakori kérdések