Eventi
17 mar, 23 - 21 mar, 23
Partecipa alla serie meetup per creare soluzioni di intelligenza artificiale scalabili basate su casi d'uso reali con altri sviluppatori ed esperti.
Iscriviti subitoQuesto browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Importante
La porta API è stata deprecata a favore dell'analisi binaria con lo strumento .NET Upgrade Assistant . Il servizio back-end di ApiPort è stato arrestato, quindi per usare lo strumento è necessario usarlo offline. Per altre informazioni, vedere il file LEGGIMI di ApiPort.
È possibile fare in modo che le librerie in uso supportino architetture multi-piattaforma Si vuole vedere quanto lavoro è necessario per eseguire l'applicazione .NET Framework in .NET Core? .NET Portability Analyzer è uno strumento che analizza gli assembly e fornisce un report dettagliato sulle API .NET mancanti per le applicazioni o le librerie da trasferire nelle piattaforme .NET specificate. Portability Analyzer è un'app console che analizza gli assembly in base a file o directory specificati.
Dopo aver convertito il progetto in modo che usi come destinazione la nuova piattaforma, ad esempio .NET Core, è possibile usare l'Analizzatore della compatibilità della piattaforma basato su Roslyn per identificare le API che generano eccezioni PlatformNotSupportedException e altri problemi di compatibilità.
Per iniziare a usare il .NET Portability Analyzer in Visual Studio, è prima necessario clonare e compilare il progetto dotnet-apiport. Funziona nelle versioni Visual Studio 2017 e Visual Studio 2019.
Importante
.NET Portability Analyzer non è supportato in Visual Studio 2022.
Un passaggio utile nell'analisi di una soluzione con molti progetti consiste nel visualizzare le dipendenze per comprendere quale subset di assembly dipende da cosa. La raccomandazione generale consiste nell'applicare i risultati dell'analisi in un approccio bottom-up a partire dai nodi foglia in un grafico delle dipendenze.
Per recuperarlo, eseguire il comando seguente:
ApiPort.exe analyze -r DGML -f [directory or file]
Il risultato sarà simile al seguente all'apertura in Visual Studio:
Immettere il comando seguente per analizzare la directory corrente:
ApiPort.exe analyze -f .
Per analizzare un elenco specifico di file .dll, immettere il comando seguente:
ApiPort.exe analyze -f first.dll -f second.dll -f third.dll
Per specificare come destinazione una versione specifica, usare il parametro -t
:
ApiPort.exe analyze -t ".NET, Version=5.0" -f .
Per altre informazioni, eseguire il comando ApiPort.exe -?
.
È consigliabile includere tutti i file .exe e .dll correlati di cui si è proprietari e si desidera eseguire la conversione e escludere i file da cui dipende l'app, ma non si è proprietari e non è possibile convertire. Questa operazione consentirà di ottenere il report di portabilità più pertinente possibile.
Nel report sono visualizzate solo le API non supportate da una piattaforma di destinazione. Il report di portabilità .NET viene salvato come file nel formato specificato. Il valore predefinito corrisponde a un file di Excel (xlsx) nella directory corrente.
La sezione Portability Summary (Riepilogo della portabilità) del report indica la percentuale di portabilità per ogni assembly incluso nell'esecuzione. Nell'esempio precedente, il 71,24% delle API .NET Framework usate nell'app svcutil
sono disponibili in .NET Core + Estensioni della piattaforma. Se si esegue lo strumento .NET Portability Analyzer per più assembly, per ognuno di questi deve essere presente una riga nel report di riepilogo della portabilità.
Nella sezione Details del report sono elencate le API mancanti da una delle Targeted Platforms selezionate.
Potresti trovare una sezione Assembly mancanti nel report. Questa sezione contiene un elenco di assembly a cui fanno riferimento gli assembly analizzati e che non sono stati analizzati. Se si tratta di assembly di cui si ha la proprietà, includerli nell'esecuzione dell'API Portability Analyzer (ApiPort) per ottenere un report dettagliato sulla portabilità a livello di API. Se si tratta di una libreria di terze parti, verificare se è presente una versione più recente che supporta la piattaforma di destinazione e prendere in considerazione il passaggio alla versione più recente. L'elenco dovrebbe col tempo includere tutti gli assembly di terze parti da cui dipende l'app con una versione che supporta la piattaforma di destinazione.
Per altre informazioni su .NET Portability Analyzer, vedere la documentazione di GitHub.
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback:
Eventi
17 mar, 23 - 21 mar, 23
Partecipa alla serie meetup per creare soluzioni di intelligenza artificiale scalabili basate su casi d'uso reali con altri sviluppatori ed esperti.
Iscriviti subitoFormazione
Modulo
Modernize ASP.NET Framework to ASP.NET Core with the .NET Upgrade Assistant - Training
In this module, you'll learn to when, why, and how to modernize an ASP.NET Framework app to ASP.NET Core using the Upgrade Assistant.
Certificazione
Microsoft Certified: Power Platform Developer Associate - Certifications
Demonstrate how to simplify, automate, and transform business tasks and processes using Microsoft Power Platform Developer.
Documentazione
Port from .NET Framework to .NET 7 - .NET Core
Understand the porting process and discover tools you might find helpful when porting a .NET Framework project to .NET 7.
Install .NET Upgrade Assistant - .NET Core
Learn how to install .NET Upgrade Assistant as a Visual Studio extension or a .NET Global Tool. .NET Upgrade Assistant assists you when upgrading projects to the latest dependencies or when upgrading to a new .NET
How to upgrade a project with .NET Upgrade Assistant - .NET Core
Learn how to upgrade one or more projects with .NET Upgrade Assistant using either Visual Studio or a terminal.