Panoramica dell'analisi legacy per il codice gestito in Visual Studio

Visual Studio può eseguire l'analisi del codice gestito in due modi: con l'analisi legacy, nota anche come analisi statica FxCop degli assembly gestiti e con gli analizzatori di codice più moderni basati sulla piattaforma del compilatore .NET. Questo argomento illustra l'analisi legacy. Per altre informazioni sull'analisi del codice basata sulla piattaforma del compilatore .NET, vedere Panoramica degli analizzatori basati sulla piattaforma del compilatore .NET.

L'analisi del codice per il codice gestito analizza gli assembly gestiti e segnala informazioni sugli assembly, ad esempio violazioni delle regole di programmazione e progettazione definite nelle linee guida per la progettazione .NET.

Lo strumento di analisi rappresenta i controlli eseguiti durante un'analisi come messaggi di avviso. I messaggi di avviso identificano eventuali problemi di programmazione e progettazione e, se possibile, forniscono informazioni su come risolverli.

Nota

L'analisi legacy (analisi del codice statico) non è supportata per i progetti .NET Core e .NET Standard in Visual Studio. Se si esegue l'analisi del codice in un progetto .NET Core o .NET Standard come parte di msbuild, verrà visualizzato un errore simile all'errore : CA0055 : Impossibile identificare la piattaforma per <il file con estensione dll>. Per analizzare il codice nei progetti .NET Core o .NET Standard, usare invece analizzatori di codice.

Integrazione dell'IDE (ambiente di sviluppo integrato)

È possibile eseguire l'analisi del codice nel progetto manualmente o automaticamente.

Per eseguire l'analisi del codice ogni volta che si compila un progetto, selezionare l'opzione nella pagina delle proprietà Analisi codice del progetto. Per altre informazioni, vedere Procedura: Abilitare e disabilitare l'analisi automatica del codice.

Per eseguire manualmente l'analisi del codice in un progetto, dalla barra dei menu scegliere Analizza esegui>analisi del codice>Esegui analisi codice nel <progetto.>

Set di regole

Le regole per l'analisi del codice gestito vengono raggruppate in set di regole. È possibile usare uno dei set di regole standard Microsoft oppure creare un set di regole personalizzato per soddisfare esigenze specifiche.

Non visualizzare gli avvisi

È in genere utile indicare se un avviso non è applicabile. In questo modo lo sviluppatore e altri individui che potrebbero esaminare il codice in un secondo momento verranno informati del fatto che un avviso è stato sottoposto ad analisi, quindi è stato eliminato o ignorato.

L'eliminazione all'interno dell'origine degli avvisi viene implementata tramite attributi personalizzati. Per non visualizzare un avviso, aggiungere l'attributo SuppressMessage al codice sorgente, come illustrato nell'esempio seguente:

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1039:ListsAreStrongTyped")]
Public class MyClass
{
   // code
}

Per altre informazioni, vedere Eliminare gli avvisi.

Nota

Se si esegue la migrazione di un progetto a Visual Studio 2019, si potrebbe improvvisamente riscontrare un numero elevato di avvisi di analisi del codice. Se non si è pronti per correggere gli avvisi, è possibile eliminarli scegliendo Analizza compilazione>e Elimina problemi attivi.

Eseguire l'analisi del codice come parte dei criteri di archiviazione

Le organizzazioni richiedono talvolta che tutte le archiviazioni soddisfino determinati criteri, tra cui, in particolare:

  • Non sono presenti errori di compilazione nel codice archiviato.

  • L'analisi del codice viene eseguita come parte della compilazione più recente.

A tale scopo, è utile quindi definire dei criteri specifici per l'archiviazione. Per altre informazioni, vedere Miglioramento della qualità del codice con i criteri di archiviazione del progetto.

Integrazione della compilazione team

È possibile utilizzare le funzionalità integrate del sistema di compilazione per eseguire lo strumento di analisi come parte del processo di compilazione. Per altre informazioni, vedere Azure Pipelines.