Configurare l'analisi del codice live per .NET

Visual Studio analizza il codice in diversi modi durante la modifica dei file di origine nell'editor. Questa analisi viene definita analisi in background. Queste analisi possono essere classificate come segue, in base alle funzionalità:

  • Calcolo in background della diagnostica: questo tipo di analisi calcola errori, avvisi e suggerimenti nei file di origine. Questi dati di diagnostica vengono visualizzati come voci nella finestra Elenco errori e contrassegnati con linee ondulate nell'editor di codice. Possono essere classificati nelle categorie seguenti:

    • Diagnostica del compilatore C# e Visual Basic
    • Diagnostica dell'analizzatore Roslyn, che include:
      • Analizzatori IDE predefiniti per i suggerimenti in stile codice
      • Analizzatori CA predefiniti per suggerimenti di qualità del codice
      • Pacchetti analizzatori esterni installati per i progetti nella soluzione corrente
  • Altre analisi in background: questo tipo di analisi migliora la velocità di risposta e l'interazione di Visual Studio per le funzionalità dell'IDE. Le analisi di esempio includono:

    • Analisi in background dei file aperti
    • Compilazione in background di progetti con file aperti per realizzare simboli per migliorare la velocità di risposta delle funzionalità dell'IDE
    • Creazione di sintassi e cache dei simboli
    • Rilevamento dell'associazione della finestra di progettazione per i file di origine, ad esempio moduli e controlli

Ambito di analisi predefinito

Per impostazione predefinita, la diagnostica del compilatore viene eseguita in tutti i documenti aperti. In Visual Studio 2022 e versioni successive, la diagnostica dell'analizzatore Roslyn viene eseguita solo nel documento attualmente attivo. Le altre analisi in background vengono eseguite per tutti i progetti con almeno un file aperto. Alcune analisi in background vengono eseguite per l'intera soluzione.

Ambito di analisi personalizzato

L'ambito predefinito di ogni analisi in background è ottimizzato per l'esperienza utente, la funzionalità e le prestazioni ottimali per la maggior parte degli scenari e delle soluzioni dei clienti. Tuttavia, esistono casi in cui i clienti potrebbero voler personalizzare questo ambito per ridurre o aumentare l'analisi in background. Ad esempio:

  • Modalità risparmio energia

    Se stai eseguendo la batteria del portatile, potresti voler ridurre al minimo il consumo di energia per una maggiore durata della batteria. In questo scenario si vuole ridurre al minimo l'analisi in background.

  • Analisi del codice su richiesta

    Se si preferisce disattivare l'esecuzione dell'analizzatore live ed eseguire manualmente l'analisi del codice quando necessario, è necessario ridurre al minimo l'analisi in background. Per altre informazioni, vedere Eseguire manualmente l'analisi del codice per .NET.

  • Analisi completa della soluzione

    Se si vuole visualizzare tutti i file di diagnostica in tutti i file della soluzione, indipendentemente dal fatto che siano aperti nell'editor, è possibile ottimizzare l'ambito di analisi in background per l'intera soluzione.

A partire da Visual Studio 2019, è possibile personalizzare in modo esplicito l'ambito di tutte le analisi del codice live, incluso il calcolo della diagnostica, per i progetti C# e Visual Basic. Gli ambiti di analisi disponibili sono:

Ambito Descrizione
Nessuno Tutti gli analizzatori e le correzioni di codice corrispondenti sono disabilitati.

La diagnostica del compilatore e le correzioni di codice corrispondenti sono abilitate in tutti i documenti aperti .
Documento corrente (impostazione predefinita) Tutti gli analizzatori vengono eseguiti solo nel documento attivo.

La diagnostica del compilatore è abilitata in tutti i documenti aperti .
Aprire documenti Tutti gli analizzatori e la diagnostica del compilatore sono abilitati in tutti i documenti aperti .
Intera soluzione Tutti gli analizzatori e la diagnostica del compilatore sono abilitati in tutti i documenti della soluzione, sia aperti che chiusi.
  • Documento corrente: riduce al minimo l'ambito di analisi del codice attivo da eseguire solo per il file corrente o visibile nell'editor.
  • Documenti aperti: l'ambito di analisi del codice live include tutti i documenti aperti. Questa è l'impostazione predefinita.
  • Intera soluzione: ottimizza l'ambito di analisi del codice live da eseguire per tutti i file e i progetti nell'intera soluzione.

È possibile scegliere uno degli ambiti di analisi personalizzati in Opzioni seguendo questa procedura:

  1. Per aprire la finestra di dialogo Opzioni, nella barra dei menu di Visual Studio scegliere Opzioni strumenti>.

  2. Nella finestra di dialogo Opzioni scegliere Editor>di testo C# (o Visual Basic) >Avanzate.

  1. Selezionare l'ambito di analisi in background dall'elenco a discesa Esegui analisi del codice in background per: per personalizzare l'ambito di analisi. Al termine, scegliere OK .

    Screenshot che mostra le opzioni dell'ambito di analisi del codice in background in Visual Studio.

  1. Selezionare l'ambito di analisi in background in Ambito di analisi in background:. Al termine, scegliere OK .

    Screenshot che mostra le opzioni dell'ambito di analisi del codice in background in Visual Studio.

Nota

Prima di Visual Studio 2019, si personalizza l'ambito di analisi per il calcolo della diagnostica per l'intera soluzione usando la casella di controllo Abilita analisi completa della soluzione dalla> scheda Strumenti Opzioni>editor>di testo C# (o Visual Basic) >Avanzate. Non è disponibile alcun supporto per ridurre al minimo l'ambito di analisi in background nelle versioni precedenti di Visual Studio.

Ridurre automaticamente l'ambito di analisi del codice in tempo reale

Se Visual Studio rileva che sono disponibili almeno 200 MB di memoria di sistema, riduce automaticamente al minimo l'ambito di analisi del codice live al documento corrente. Quando si verifica questa situazione, viene visualizzato un avviso che informa che Visual Studio sta disabilitando alcune funzionalità. Per altre informazioni, vedere Sospensione automatica delle funzionalità.

Screenshot che mostra l'avviso che indica che Visual Studio riduce al minimo l'ambito di analisi.