Introduzione alla migrazione incrementale di ASP.NET a ASP.NET Core

Per una migrazione di grandi dimensioni, è consigliabile configurare un'app ASP.NET Core che esegue il proxy all'app .NET Framework originale. La nuova app abilitata per il proxy è illustrata nell'immagine seguente:

avviare la migrazione delle route

Per comprendere come questo approccio è utile nel processo di migrazione, vedere ASP.NET incrementale per ASP.NET migrazione core. Di rest questo articolo vengono illustrati i passaggi per procedere con una migrazione incrementale.

Configurare ASP.NET progetto principale

Per ASP.NET app MVC e API Web, vedere Informazioni su come eseguire l'aggiornamento da ASP.NET MVC e API Web a ASP.NET Core MVC. Per le app Web Form di ASP.NET Framework, vedere Informazioni su come eseguire l'aggiornamento da Web Forms ASP.NET a ASP.NET Core.

Aggiornare le librerie di supporto

Se nella soluzione sono disponibili librerie di supporto da usare, è consigliabile aggiornarli a .NET Standard 2.0, se possibile. Assistente aggiornamento è un ottimo strumento per questo. Se le librerie non sono in grado di specificare come destinazione .NET Standard, è possibile usare .NET 6 o versione successiva insieme alla destinazione .NET Framework nel progetto originale o in un nuovo progetto insieme all'originale.

Gli adattatori possono essere usati in queste librerie per abilitare il supporto per System.Web.HttpContext l'utilizzo nelle librerie di classi. Per abilitare System.Web.HttpContext l'utilizzo in una libreria:

  1. Rimuovere il riferimento a System.Web nel file di progetto
  2. Aggiungere il Microsoft.AspNetCore.SystemWebAdapters pacchetto
  3. Abilitare multitargeting e aggiungere una destinazione .NET 6 o versione successiva oppure convertire il progetto in .NET Standard 2.0.
  4. Verificare che il framework di destinazione supporti .NET Core. È possibile usare multitargeting se .NET Standard 2.0 non è sufficiente

Questo passaggio potrebbe richiedere la modifica di diversi progetti a seconda della struttura della soluzione. Assistente aggiornamento consente di identificare i passaggi necessari per modificare e automatizzare diversi passaggi del processo.

Abilitare il supporto per le sessioni

La sessione è una funzionalità comunemente usata di ASP.NET che condivide il nome con una funzionalità in ASP.NET Core le API sono molto diverse. Vedere la documentazione sul supporto delle sessioni.

Abilitare il supporto per l'autenticazione condivisa

È possibile condividere l'autenticazione tra l'app ASP.NET originale e la nuova app ASP.NET Core usando la System.Web funzionalità di autenticazione remota delle schede. Questa funzionalità consente all'app ASP.NET Core di rinviare l'autenticazione all'app ASP.NET. Per altri dettagli, vedere la documentazione sulla connessione all'app remota e sull'autenticazione remota.

Indicazioni generali sull'utilizzo

Esistono diverse differenze tra ASP.NET e ASP.NET Core che le schede sono in grado di aggiornare. Esistono tuttavia alcune funzionalità che richiedono un consenso esplicito perché comportano alcuni costi. Esistono anche comportamenti che non possono essere adattati. Per un elenco di questi elementi, vedere le indicazioni sull'utilizzo.