Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
GitHub Copilot Modernisierung ist ein GitHub Copilot Agent, der Ihnen hilft, Projekte auf neuere Versionen von .NET zu aktualisieren und .NET Anwendungen schnell und sicher zu Azure zu migrieren. Es führt Sie durch Bewertung, Lösungsempfehlungen, Codefixes und Validierung in Visual Studio, Visual Studio Code, GitHub Copilot CLI und GitHub.com.
Verwenden Sie diesen Agent, um:
- Aktualisieren Sie auf eine neuere Version von .NET.
- Migrieren Sie Technologien, und stellen Sie sie auf Azure bereit.
- Modernisieren Sie Ihre .NET-App, insbesondere beim Upgrade von .NET Framework.
- Bewerten Sie den Code, die Konfiguration und die Abhängigkeiten Ihrer Anwendung.
- Planen und Einrichten der richtigen Azure Ressource.
- Beheben Sie Probleme, und wenden Sie bewährte Methoden für die Cloudmigration an.
- Überprüfen Sie, ob Ihre App erfolgreich erstellt und getestet wird.
Szenarien
Der Agent stellt mehrere End-to-End-Modernisierungsworkflows bereit, die als Szenarien bezeichnet werden. Jedes Szenario ist ein verwalteter Workflow, der Sie durch eine bestimmte Art von Upgrade oder Migration führt:
| Szenario | Beschreibung | Beispielaufforderung |
|---|---|---|
| .NET Versions-Upgrade | Upgrades von älteren .NET Versionen auf .NET 8, 9, 10 oder höher. | "Upgrade meiner Lösung auf .NET 10" |
| Konvertierung im SDK-Stil | Konvertiert das ältere Projektformat in das SDK-Format. | "In SDK-Format konvertieren" |
| Newtonsoft.Json-Migration | Ersetzt Newtonsoft.Json durch System.Text.Json. | "Migrieren von Newtonsoft.Json" |
| SqlClient-Migration | Migriert von System.Data.SqlClient zu Microsoft. Data.SqlClient. | "SqlClient aktualisieren" |
| Azure Functions Aktualisierung | Aktualisiert Azure Functions vom in-Process-Modell auf das isolierte Arbeitsmodell. | "Upgrade meine Azure Functions" |
| Semantischer Kernel zu Agents | Migriert Semantischer Kernel Agents zu Microsoft Agents AI. | "Meine SK-Agenten migrieren" |
Eine vollständige Referenz zu allen Szenarien und 30+ integrierten Migrationskompetenzen finden Sie unter Szenarien und Kompetenzreferenz.
Feedback geben
Microsoft wertet Ihr Feedback und verwendet es, um den Agent zu verbessern. Geben Sie Feedback über eine der folgenden Optionen ab:
Verwenden Sie in Visual Studio die optionen Suggest a feature und Report a problem.
Ein Problem im @modernize-dotnet GitHub Repository melden.
Voraussetzungen
Richten Sie GitHub Copilot Modernisierung in Ihrer Entwicklungsumgebung ein, bevor Sie den Agent verwenden. Installationsschritte finden Sie unter Installieren GitHub Copilot Modernisierung.
Upgrade .NET-Projekte
Der Modernisierungs-Agent unterstützt das Upgrade von C# und Visual Basic Projekten der folgenden Typen:
- ASP.NET Core (und verwandte Technologien wie MVC, Razor Pages und Web-API)
- Blazor
- Azure Functions
- Windows Presentation Foundation (WPF)
- Windows Forms
- WinUI
- .NET MAUI und Xamarin
- Klassenbibliotheken
- Konsolen-Apps
- Testprojekte (MSTest, NUnit und xUnit)
Informationen zum Starten eines Upgrades finden Sie unter Upgrade einer .NET App mit GitHub Copilot Modernisierung.
Unterstützte Upgradepfade
Der Agent unterstützt die folgenden Upgradepfade:
| Quelle | Ziel |
|---|---|
| .NET Framework (beliebige Version) | .NET 8 oder höher |
| .NET Core 1.x–3.x | .NET 8 oder höher |
| .NET 5 oder höher | .NET 8 oder höher |
Migrieren von .NET Projekten zu Azure
Der Modernisierungs-Agent vereinfacht Azure Migrationen durch automatisierte Analyse, KI-gesteuerte Codebehebung, Build- und Sicherheitsrisikoüberprüfungen und Bereitstellungsautomatisierung:
Analyse und intelligente Empfehlungen.
Bewerten Sie die Bereitschaft Ihrer Anwendung für Azure Migration und erhalten Sie maßgeschneiderte Anleitungen basierend auf ihren Abhängigkeiten und identifizierten Problemen.
KI-gestützte Codekorrektur.
Wenden Sie vordefinierte Best-Practice-Codemuster an, um die Modernisierung mit minimalem manuellen Aufwand zu beschleunigen.
Automatische Build- und CVE-Resolution.
Erstellen Sie Ihre App, und beheben Sie Kompilierungsfehler und Sicherheitsrisiken, um die Entwicklung zu optimieren.
Nahtlose Bereitstellung.
Stellen Sie auf Azure bereit und überführen Sie Ihren Code schneller von der Entwicklung in die Produktion.
Vordefinierte Aufgaben für die Migration
GitHub Copilot Modernisierung für .NET bietet vordefinierte Aufgaben, die bewährte Methoden der Branche erfassen und allgemeine Migrationsszenarien abdecken.
Migrieren Sie zu einer auf verwalteter Identität basierten Datenbank auf Azure, einschließlich Azure SQL DB, Azure SQL MI und Azure PostgreSQL
Modernisieren Sie Ihre Datenschicht, indem Sie von lokalen oder älteren Datenbanken (z. B. DB2, Oracle DB oder SQL Server) zu Azure SQL DB, Azure SQL Managed Instance oder Azure PostgreSQL migrieren. Verwenden Sie die sichere verwaltete Identitätsauthentifizierung.
Migrate to Azure File Storage
Verschieben Sie Datei-E/A-Vorgänge vom lokalen Dateisystem in Azure Dateispeicher für skalierbare, cloudbasierte Dateiverwaltung.
Auf Azure Blob Storage migrieren
Ersetzen Sie den lokalen oder cloudübergreifenden Objektspeicher oder die datei-E/A des lokalen Dateisystems durch Azure Blob Storage für unstrukturierte Daten.
Migrieren zu Microsoft Entra ID
Übergangsauthentifizierung und Autorisierung von Windows Active Directory zu Microsoft Entra ID (ehemals Azure AD) für moderne Identitätsverwaltung.
Migrieren Sie zu gesicherten Anmeldeinformationen, indem Sie Managed Identity und Azure Key Vault verwenden
Ersetzen Sie Nur-Text-Anmeldeinformationen in der Konfiguration oder im Code durch sichere, verwaltete Identitäten und Azure Key Vault für die Verwaltung geheimer Schlüssel.
Migrieren zu Azure Service Bus
Wechseln Sie von älteren oder Drittanbieter-Nachrichtenwarteschlangen (z. B. MSMQ oder RabbitMQ) oder Amazon SQS (AWS Simple Queue Service) zu Azure Service Bus für zuverlässiges, cloudbasiertes Messaging.
Migrieren zu Azure Communication Service E-Mail
Ersetzen Sie das senden von direkten SMTP-E-Mails durch Azure Communication Service für skalierbare, sichere E-Mail-Zustellung.
Migrate to Confluent Cloud/Azure Event Hub for Apache Kafka
Wechseln Sie von lokalem oder On-Premises-Kafka zu verwalteten Event-Streaming-Lösungen mit Confluent Cloud oder Azure Event Hubs.
Migration zu OpenTelemetry auf Azure
Übergang von lokalen Protokollierungsframeworks wie Log4net, Serilog und Windows Ereignisprotokoll zu OpenTelemetry für Azure.
Migrieren Sie zu Azure Cache for Redis mithilfe von Managed Identity
Ersetzen Sie In-Memory- oder lokale Redis-Cacheimplementierungen durch Azure Cache for Redis für hohe Verfügbarkeit, Skalierbarkeit und Sicherheit auf Unternehmensniveau.
Funktionsweise
Informationen zum Starten eines Upgrade- oder Migrationsprozesses finden Sie unter:
Öffnen Sie Ihr .NET Projekt oder Ihre Lösung in Ihrer Entwicklungsumgebung.
Starten Sie den Agent mit einer der folgenden Methoden:
-
Visual Studio: Klicken Sie mit der rechten Maustaste auf die Lösung oder das Projekt im Projektmappen-Explorer und wählen Sie Modernize aus. Oder öffnen Sie das Fenster GitHub Copilot Chat, und geben Sie
@Modernizeein. -
Visual Studio Code: Öffnen Sie den Bereich GitHub Copilot Chat, und geben Sie
@modernize-dotnetein. -
GitHub Copilot CLI: Geben Sie
@modernize-dotnetgefolgt von Ihrer Upgrade- oder Migrationsanforderung ein. -
GitHub.com: Verwenden Sie den Codierungs-Agent
modernize-dotnetin Ihrem Repository.
-
Visual Studio: Klicken Sie mit der rechten Maustaste auf die Lösung oder das Projekt im Projektmappen-Explorer und wählen Sie Modernize aus. Oder öffnen Sie das Fenster GitHub Copilot Chat, und geben Sie
Informieren Sie den Agent, was aktualisiert oder migriert werden soll.
Wenn Sie den Modernisierungsagent bitten, Ihre App zu upgraden, wird Copilot Sie zuerst auffordern, einen neuen Branch zu erstellen, wenn Sie in einem Git-Repository arbeiten. Anschließend wird Copilot Ihr Projekt bewerten und einen dreistufigen Workflow ausführen. Jede Phase erzeugt Markdown-Dateien unter .github/upgrades/{scenarioId} Ihrem Repository, damit Sie überprüfen können, was als Nächstes kommt, bevor Sie fortfahren. Wenn .github/upgrades/{scenarioId} bereits aus einem vorherigen Versuch vorhanden ist, fragt Copilot, ob der Vorgang fortgesetzt oder neu gestartet werden soll.
Copilot beginnen, ihre Projektstruktur, Abhängigkeiten und Codemuster zu untersuchen, um eine umfassende Bewertung zu erstellen. In der assessment.md Datei werden die änderungen, API-Kompatibilitätsprobleme, veraltete Muster und der Upgradebereich aufgeführt.
Nach der Bewertung führt Copilot die folgenden drei Phasen aus:
Assessment: Copilot untersucht Die Projektstruktur, Abhängigkeiten und Codemuster und stellt dann Strategieentscheidungen für Ihre Überprüfung vor, z. B. die Upgradestrategie (Bottom-up, Top-down oder all-at-once), den Projektmigrationsansatz, die Technologiemodernisierungsoptionen und die Kompatibilitätsbehandlung. Copilot speichert bestätigte Entscheidungen in
upgrade-options.md.Planning: Copilot konvertiert die Bewertung und Ihre bestätigten Optionen in eine detaillierte Spezifikation. Die
plan.mdDatei dokumentiert Upgradestrategien, Umgestaltungsansätze, Abhängigkeitspfade und Risikominderungen.Execution: Copilot teilt den Plan in sequentielle, konkrete Aufgaben mit Validierungskriterien in
tasks.md. Jeder Vorgang beschreibt eine einzelne Änderung und wie Copilot bestätigt, dass er erfolgreich war.
Bearbeiten Sie eine der Markdown-Dateien in .github/upgrades/{scenarioId}, um die Upgradeschritte anzupassen oder Kontext hinzuzufügen, bevor Sie fortfahren.
Upgrade-Strategien
Während der Bewertungsphase bewertet der Agent Ihre Lösung und empfiehlt eine der folgenden Strategien:
| Strategie | Am besten geeignet für: | Beschreibung |
|---|---|---|
| Unten nach oben | Große Lösungen mit tiefen Abhängigkeitsdiagrammen | Aktualisiert zuerst die untergeordneten Projekte und arbeitet dann nach oben. |
| Oben unten | Schnelles Feedback zur Hauptanwendung | Aktualisiert zuerst das Anwendungsprojekt und behebt dann Abhängigkeiten. |
| Alle gleichzeitig | Kleine, einfache Lösungen | Aktualisiert alle Projekte in einem Durchgang. |
Flussmodus
Der Agent unterstützt zwei Flussmodi, die steuern, wie lange er für Ihre Eingabe pausiert.
- Automatisch: Der Agent arbeitet durch alle Phasen, ohne zu pausieren und nur bei echten Blockern zu stoppen. Am besten geeignet für erfahrene Benutzer und einfache Upgrades.
- Geführt: Der Agent hält an jeder Abschnittsgrenze an, damit Sie die Bewertung, den Plan und die Aufgaben überprüfen können, bevor Sie fortfahren. Optimal für Erstmalige Benutzer und komplexe Lösungen.
Wechseln Sie jederzeit zwischen den Modi, indem Sie "Pause" (um in den geführten Modus zu wechseln) oder "Weiter" (um in den automatischen Modus zu wechseln) sagen.
Zustandsverwaltung
Der Agent speichert den gesamten Upgradestatus in .github/upgrades/{scenarioId}/. Der Ordner enthält:
| Datei | Purpose |
|---|---|
assessment.md |
Analyse Ihrer Lösung |
upgrade-options.md |
Bestätigte Upgradeentscheidungen |
plan.md |
Sortierter Aufgabenplan |
tasks.md |
Echtzeit-Fortschritts-Dashboard |
scenario-instructions.md |
Beständiger Speicher des Agents, einschließlich Einstellungen, Entscheidungen und benutzerdefinierte Anweisungen |
execution-log.md |
Detaillierter Überwachungspfad aller Änderungen |
tasks/{taskId}/task.md |
Aufgabenbereich und Kontext |
tasks/{taskId}/progress-details.md |
Ausführungsnotizen und -ergebnisse pro Aufgabe |
Da sich der gesamte Zustand in diesem Ordner befindet, können Sie Ihre IDE schließen, zwischen Sitzungen wechseln oder sogar zwischen Entwicklungsumgebungen wechseln (z. B. in VS Code starten und in Visual Studio fortfahren). Der Agent nimmt an der Stelle auf, an der er aufgehört hat.
Tipp
Übertragen Sie den .github/upgrades/ Ordner in Ihren Branch. Der zugesicherte Systemzustand dient als Backup und ermöglicht es Teammitgliedern, den Upgradefortschritt anzuzeigen.
Durchführen des Upgrades
Überprüfen und ändern Sie nach Abschluss jeder Phase die generierten Dateien nach Bedarf, und teilen Sie dann Copilot mit, die nächste Phase fortzusetzen.
Wenn Sie die Phase Execution erreichen, teilen Sie Copilot mit, das Upgrade zu starten. Wenn Copilot zu einem Problem kommt, wird versucht, die Ursache zu identifizieren und eine Lösung anzuwenden. Wenn Copilot das Problem nicht beheben kann, werden Sie um Hilfe gebeten. Wenn Sie eingreifen, lernt Copilot von den änderungen, die Sie vornehmen, und versucht, sie automatisch anzuwenden, wenn das Problem erneut auftritt.
Upgrade-Ergebnisse
Wenn Copilot jede Aufgabe ausführt, aktualisiert sie die Datei tasks.md in .github/upgrades/{scenarioId} mit dem Status jedes Schritts. Überwachen Sie den Fortschritt, indem Sie diese Datei überprüfen. Copilot erstellt einen Git-Commit für jeden Teil des Prozesses, sodass Sie Änderungen zurücksetzen oder überprüfen können, was geändert wurde.
Nach Abschluss des Upgrades zeigt Copilot die nächsten Schritte in der Chatantwort an.
Telemetrie
Das Tool sammelt Daten zu Projekttypen, Absicht zum Upgrade und Upgradedauer. Die Entwicklungsumgebung sammelt und aggregiert die Daten und enthält keine benutzeridentifizierbaren Informationen. Weitere Informationen zur Datenschutzrichtlinie von Microsoft finden Sie unter Visual Studio Programm zur Verbesserung der Benutzerfreundlichkeit.
Verwandte Inhalte
- GitHub Copilot Modernisierung installieren
- Upgrade einer .NET-Anwendung unter Einsatz der GitHub Copilot-Modernisierung
- Kernkonzepte
- Referenz zu Szenarien und Fähigkeiten
- Bewährte Methoden
- Fehlerbehebung bei der Modernisierung von GitHub Copilot
- Quickstart: Migrieren eines .NET Projekts
- GitHub Copilot FAQ zur Modernisierung