Condividi tramite


Che cos'è la modernizzazione di GitHub Copilot?

La modernizzazione di GitHub Copilot è un agente Di GitHub Copilot che consente di aggiornare i progetti alle versioni più recenti di .NET ed eseguire la migrazione di applicazioni .NET ad Azure in modo rapido e sicuro. Illustra le procedure di valutazione, consigli sulle soluzioni, correzioni del codice e convalida in Visual Studio, Visual Studio Code, interfaccia della riga di comando di GitHub Copilot e GitHub.com.

Usare questo agente per:

  • Eseguire l'aggiornamento a una versione più recente di .NET.
  • Eseguire la migrazione delle tecnologie e della distribuzione in Azure.
  • Modernizzare l'app .NET, in particolare durante l'aggiornamento da .NET Framework.
  • Valutare il codice, la configurazione e le dipendenze dell'applicazione.
  • Pianificare e configurare la risorsa Azure corretta.
  • Risolvere i problemi e applicare le procedure consigliate per la migrazione cloud.
  • Verificare che l'app venga compilata e verificata correttamente.

Inviare commenti

Microsoft valorirà il feedback e lo usa per migliorare l'agente. Esistono due modi per lasciare commenti e suggerimenti:

Prerequisiti

Configurare la modernizzazione di GitHub Copilot nell'ambiente di sviluppo prima di usare l'agente. Per la procedura di installazione, vedere Installare la modernizzazione di GitHub Copilot.

Aggiornare i progetti di .NET

L'agente di modernizzazione supporta l'aggiornamento dei progetti C# dei tipi seguenti:

  • ASP.NET Core (e tecnologie correlate, ad esempio MVC, Razor Pages e API Web)
  • Blazor
  • Azure Functions
  • WPF (Windows Presentation Foundation)
  • Windows Forms
  • Librerie di classi
  • Applicazioni console

Per avviare un aggiornamento, vedere Aggiornare un'app .NET con la modernizzazione di GitHub Copilot.

Percorsi di aggiornamento

L'agente supporta i percorsi di aggiornamento seguenti:

  • Aggiornare i progetti dalle versioni .NET precedenti alla versione più recente.
  • Aggiornare i progetti di .NET Framework a .NET.
  • Modernizzare la codebase usando nuove funzionalità.
  • Eseguire la migrazione di componenti e servizi a Azure.

Eseguire la migrazione di progetti .NET a Azure

L'agente di modernizzazione semplifica Azure migrazioni tramite l'analisi automatizzata, la correzione del codice basata su intelligenza artificiale, i controlli di compilazione e vulnerabilità e l'automazione della distribuzione:

  • Analisi e raccomandazioni intelligenti

    Valuta l'idoneità della tua applicazione per la migrazione ad Azure e ricevi indicazioni personalizzate in base alle sue dipendenze e ai problemi identificati.

  • Correzione del codice basata su intelligenza artificiale

    Applicare modelli di codice di procedura consigliata predefiniti per accelerare la modernizzazione con un lavoro manuale minimo.

  • Compilazione automatica e risoluzione CVE

    Compilare l'app e risolvere gli errori di compilazione e le vulnerabilità, semplificando lo sviluppo.

  • Distribuzione senza problemi

    Eseguire la distribuzione in Azure, portando il codice dallo sviluppo alla produzione più velocemente.

Attività predefinite per la migrazione

La modernizzazione di GitHub Copilot per .NET offre attività predefinite che acquisiscino le procedure consigliate del settore e coprono scenari di migrazione comuni.

  • Migrare a database con Identità Gestita su Azure, inclusi Azure SQL DB, Azure SQL MI e Azure PostgreSQL

    Modernizzare il livello dati eseguendo la migrazione da database locali o legacy (ad esempio DB2, Oracle DB o SQL Server) a database Azure SQL, Azure SQL Managed Instance o Azure PostgreSQL. Usare l'autenticazione tramite identità gestita sicura.

  • Migrazione su Archiviazione File di Azure

    Spostare le operazioni di I/O dei file dal file system locale all'Archiviazione file di Azure per la gestione scalabile e basata su cloud dei file.

  • Migra su Azure Blob Storage

    Sostituire l'archiviazione di oggetti locali o tra cloud e l'I/O dei file di file system con Azure Blob Storage per i dati non strutturati.

  • Migra a Microsoft Entra ID

    Eseguire la transizione dell'autenticazione e dell'autorizzazione da Windows Active Directory a Microsoft Entra ID (in precedenza Azure AD) per la gestione moderna delle identità.

  • Migrare verso credenziali protette utilizzando Identità gestita e Azure Key Vault

    Sostituire le credenziali in testo non crittografato nella configurazione o nel codice con identità sicure, gestite e Azure Key Vault per la gestione dei segreti.

  • Migrate in Azure Service Bus

    Passare da code di messaggi legacy o di terze parti (ad esempio MSMQ o RabbitMQ) o Amazon SQS (AWS Simple Queue Service) a Azure Service Bus per la messaggistica affidabile basata sul cloud.

  • Migrate per Azure messaggio di posta elettronica del servizio di comunicazione

    Sostituire l'invio diretto della posta elettronica SMTP usando Azure Servizio di comunicazione per il recapito di posta elettronica scalabile e sicuro.

  • Migrare a Confluent Cloud/Azure Event Hub per Apache Kafka

    Eseguire la transizione da Kafka locale o locale allo streaming di eventi gestiti usando Confluent Cloud o Azure Event Hubs.

  • Migrare a OpenTelemetry su Azure

    Eseguire la transizione da framework di registrazione locali come log4net, serilog e il registro eventi di Windows a OpenTelemetry su Azure.

  • Migrare a Azure Cache for Redis usando l'identità gestita

    Sostituire le implementazioni della cache Redis in memoria o locale con Azure Cache for Redis per la disponibilità elevata, la scalabilità e la sicurezza di livello aziendale.

Come funziona

Per avviare un processo di aggiornamento o migrazione, vedere:

  1. Aprire il progetto o la soluzione .NET nell'ambiente di sviluppo.

  2. Avviare l'agente usando uno dei metodi seguenti:

    • Visual Studio: fare clic con il pulsante destro del mouse sulla soluzione o sul progetto in Solution Explorer e selezionare Modernize. In alternativa, aprire la finestra GitHub Copilot Chat e digitare @Modernize.
    • Visual Studio Code: aprire il pannello GitHub Copilot Chat e digitare @modernize-dotnet.
    • GitHub Copilot cli: digitare @modernize-dotnet seguito dalla richiesta di aggiornamento o migrazione.
    • GitHub.com: usare l'agente di codifica modernize-dotnet nel repository.
  3. Indicare all'agente cosa aggiornare o eseguire la migrazione.

Quando si chiede all'agente di modernizzazione di aggiornare l'app, Copilot prima chiede di creare un nuovo ramo se si lavora in un repository Git. Quindi Copilot esegue un flusso di lavoro a tre fasi. Ogni fase scrive un file .github/upgrades Markdown nel repository in modo da poter esaminare i passaggi successivi prima di continuare. Se .github/upgrades esiste già da un tentativo precedente, Copilot chiede se continuare o iniziare da zero.

  • Fase di valutazione (assessment.md)
    Copilot esamina la struttura del progetto, le dipendenze e i modelli di codice per creare una valutazione completa. Il documento elenca le modifiche di rilievo, i problemi di compatibilità delle API, i modelli deprecati e l'ambito di aggiornamento in modo da conoscere esattamente ciò che richiede attenzione.

  • Fase di pianificazione (plan.md)
    Copilot converte la valutazione in una specifica dettagliata che spiega come risolvere ogni problema. Il piano documenta strategie di aggiornamento, approcci di refactoring, percorsi di aggiornamento delle dipendenze e mitigazioni dei rischi.

  • Fase di esecuzione (tasks.md)
    Copilot suddivide il piano in attività sequenziali e concrete con criteri di convalida. Ogni attività descrive una singola modifica e come Copilot conferma l'esito positivo.

Modificare uno dei file Markdown in .github/upgrades per modificare i passaggi di aggiornamento o aggiungere contesto prima di procedere.

Eseguire l'aggiornamento.

Al termine di ogni fase, esaminare e modificare le attività generate in base alle esigenze e quindi indicare Copilot di continuare con la fase successiva.

Quando si raggiunge la fase Execution, indicare Copilot di avviare l'aggiornamento. Se Copilot si verifica un problema, tenta di identificare la causa e di applicare una correzione. Se Copilot non riesce a risolvere il problema, chiede aiuto. Quando si interviene, Copilot apprende dalle modifiche apportate e tenta di applicarle automaticamente se il problema si ripresenta.

Risultati dell'aggiornamento

Quando Copilot esegue ogni attività, aggiorna il file tasks.md in .github/upgrades con lo stato di ogni passaggio. Monitorare lo stato di avanzamento esaminando questo file. Lo strumento crea un commit Git per ogni parte del processo, in modo da poter eseguire il rollback delle modifiche o esaminare le modifiche apportate.

Al termine dell'aggiornamento, Copilot visualizza i passaggi successivi nella risposta della chat.

Telemetria

Lo strumento raccoglie i dati sui tipi di progetto, sulla finalità di aggiornare e sulla durata dell'aggiornamento. L'ambiente di sviluppo raccoglie e aggrega i dati e non contiene informazioni identificabili dall'utente. Per altre informazioni sull'informativa sulla privacy di Microsoft, vedere Visual Studio Customer Experience Improvement Program.