Disabilitare l'analisi del codice sorgente per .NET

Visual Studio consente di controllare se gli analizzatori del codice sorgente vengono eseguiti in fase di compilazione e in fase di progettazione. Esistono limitazioni a ciò che è possibile disabilitare e la procedura per disattivare l'analisi del codice varia a seconda di alcuni fattori:

  • Tipo di progetto (.NET Core, .NET Standard e .NET 5+ rispetto a .NET Framework)

    I progetti .NET Core, .NET Standard e .NET 5+ hanno opzioni nella pagina delle proprietà analisi del codice che consentono di disattivare l'analisi del codice dagli analizzatori installati come pacchetto NuGet. Per altre informazioni, vedere Progetti .NET Core, .NET Standard e .NET 5+. I progetti .NET Framework richiedono invece di impostare le proprietà nel file di progetto. Per disattivare l'analisi del codice sorgente per i progetti .NET Framework, vedere Progetti .NET Framework.

  • Analisi di origine e analisi legacy

    Questo articolo si applica all'analisi del codice sorgente e non all'analisi legacy (binaria). Per informazioni sulla disabilitazione dell'analisi legacy, vedere Abilitare e disabilitare l'analisi del codice binario per il codice gestito.

Progetti .NET Core, .NET Standard e .NET 5+

Visual Studio 2022 versione 17.0.4 e successive fornisce due caselle di controllo nella pagina delle proprietà Analisi codice per controllare se gli analizzatori vengono eseguiti in fase di compilazione e progettazione. Per disabilitare l'analisi del codice nel progetto, seguire questa procedura:

  1. Fare clic con il pulsante destro del mouse sul nodo del progetto in Esplora soluzioni e quindi scegliere Proprietà.

  2. Selezionare Analisi codice.

    Verrà visualizzata la pagina delle proprietà Analisi codice.

    Screenshot che mostra la pagina delle proprietà analisi codice.

  3. Per disabilitare l'analisi dell'origine in fase di compilazione, in Esegui in compilazione deselezionare Esegui sempre l'analisi del codice alla compilazione.

  4. Per disabilitare l'analisi dell'origine dinamica, in Esegui analisi in tempo reale deselezionare Esegui analisi del codice in tempo reale nell'editor durante la digitazione.

Nota

A partire da Visual Studio 2022 versione 17.0.4, se si preferisce il flusso di lavoro di esecuzione dell'analisi del codice su richiesta, è possibile disabilitare l'esecuzione dell'analizzatore durante l'analisi in tempo reale. In alternativa, è possibile compilare e attivare manualmente l'analisi del codice una sola volta in un progetto o in una soluzione su richiesta. Per informazioni sull'esecuzione manuale dell'analisi del codice, vedere Eseguire manualmente l'analisi del codice per .NET.

Progetti .NET Framework

Per disattivare l'analisi del codice sorgente per gli analizzatori, aggiungere una o più delle proprietà MSBuild seguenti al file di progetto.

Proprietà MSBuild Descrizione Default
RunAnalyzersDuringBuild Controlla se gli analizzatori vengono eseguiti in fase di compilazione. true
RunAnalyzersDuringLiveAnalysis Controlla se gli analizzatori analizzano il codice in tempo reale in fase di progettazione. true
RunAnalyzers L'impostazione di questa proprietà su false disabilita gli analizzatori in fase di compilazione e progettazione. Ha la precedenza su RunAnalyzersDuringBuild e RunAnalyzersDuringLiveAnalysis. true

Ad esempio:

<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>

Questa pagina consente di disabilitare l'analisi del codice in Visual Studio. Esistono limitazioni a ciò che è possibile disabilitare e la procedura per disattivare l'analisi del codice varia a seconda di alcuni fattori:

  • Tipo di progetto (.NET Core, .NET Standard e .NET 5+ rispetto a .NET Framework)

    I progetti .NET Core, .NET Standard e .NET 5+ hanno opzioni nella pagina delle proprietà analisi del codice che consentono di disattivare l'analisi del codice dagli analizzatori installati come pacchetto NuGet. Per altre informazioni, vedere Progetti .NET Core, .NET Standard e .NET 5+. Per informazioni su come disattivare l'analisi del codice sorgente nei progetti .NET Framework, vedere Progetti .NET Framework.

  • Analisi di origine e analisi legacy

    Questo articolo si applica all'analisi del codice sorgente e non all'analisi legacy (binaria). Per informazioni sulla disabilitazione dell'analisi legacy, vedere Abilitare e disabilitare l'analisi del codice binario per il codice gestito.

Progetti .NET Core, .NET Standard e .NET 5+

Visual Studio 2019 versione 16.3 e versioni successive fornisce due caselle di controllo nella pagina delle proprietà Analisi codice che consente di controllare se gli analizzatori vengono eseguiti in fase di compilazione e progettazione. Queste opzioni sono specifiche del progetto.

Screenshot che mostra la pagina delle proprietà analisi codice.

Per aprire questa pagina, fare clic con il pulsante destro del mouse sul nodo del progetto in Esplora soluzioni e scegliere Proprietà. Selezionare la scheda Analisi codice.

  • Per disabilitare l'analisi dell'origine in fase di compilazione, deselezionare l'opzione Esegui in fase di compilazione .
  • Per disabilitare l'analisi dell'origine dinamica, deselezionare l'opzione Esegui analisi in tempo reale .

Nota

A partire da Visual Studio 2019 versione 16.5, se si preferisce il flusso di lavoro di esecuzione dell'analisi del codice su richiesta, è possibile disabilitare l'esecuzione dell'analizzatore durante l'analisi in tempo reale. In alternativa, è possibile compilare e attivare manualmente l'analisi del codice una sola volta in un progetto o in una soluzione su richiesta. Per informazioni sull'esecuzione manuale dell'analisi del codice, vedere Eseguire manualmente l'analisi del codice per .NET.

Progetti .NET Framework

Per disattivare l'analisi del codice sorgente per gli analizzatori, aggiungere una o più delle proprietà MSBuild seguenti al file di progetto.

Proprietà MSBuild Descrizione Default
RunAnalyzersDuringBuild Controlla se gli analizzatori vengono eseguiti in fase di compilazione. true
RunAnalyzersDuringLiveAnalysis Controlla se gli analizzatori analizzano il codice in tempo reale in fase di progettazione. true
RunAnalyzers L'impostazione di questa proprietà su false disabilita gli analizzatori in fase di compilazione e progettazione. Ha la precedenza su RunAnalyzersDuringBuild e RunAnalyzersDuringLiveAnalysis. true

Ad esempio:

<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>