Guida per la produttività di Visual Studio per gli sviluppatori C#

Informazioni su come Visual Studio rende gli sviluppatori .NET che usano C# più produttivi che mai. grazie ai miglioramenti che interessano prestazioni e produttività, come l'esplorazione di assembly decompilati, suggerimenti di nomi di variabili durante la digitazione, una visualizzazione della gerarchia in Esplora test, l'uso di Vai a tutti (CTRL+T) per passare alle dichiarazioni di file/tipo/membro/simbolo, un Helper eccezioni intelligente, configurazione e imposizione dello stile del codice e molti refactoring e correzioni del codice.

Per la produttività generale per .NET, C++e altri linguaggi, vedere Guida alla produttività per Visual Studio. Per informazioni sui tasti di scelta rapida più utili, vedere Tasti di scelta rapida per la produttività. Per un elenco completo dei tasti di scelta rapida per i comandi, vedere Tasti di scelta rapida predefiniti.

Usare i tasti di scelta rapida da un editor diverso

Se si è abituati a usare un IDE o un ambiente di codifica diverso, è possibile modificare lo schema della tastiera per Visual Studio Code o ReSharper (Visual Studio):

Screenshot of the keyboard schemes in Visual Studio 2022.

Keyboard Schemes in Visual Studio

Alcune estensioni offrono anche gli schemi della tastiera:

Di seguito sono riportate alcune combinazioni di tasti di scelta rapida comuni di Visual Studio:

Tasti di scelta rapida (tutti i profili) Comando Descrizione
CTRL+T Vai a tutti Consente di passare a qualsiasi dichiarazione di file, tipo, membro o simbolo
F12 (o CTRL+clic) Vai a definizione Consente di passare al punto in cui si trova la definizione di un simbolo
CTRL+F12 Vai all'implementazione Consente di passare da un tipo o membro di base alle varie implementazioni di questo.
MAIUSC+F12 Trova tutti i riferimenti Consente di visualizzare tutti i riferimenti di simboli o valori letterali
ALT+Home Vai a base Spostarsi nella catena di ereditarietà
CTRL+. (anche ALT+INVIO nel profilo C#) Azioni rapide e refactoring Visualizza le correzioni e le azioni di generazione di codice, i refactoring e altre azioni rapide disponibili in corrispondenza della posizione del cursore o del codice selezionato
Ctrl+D Duplicare una riga Duplica la riga di codice in cui si trova il cursore
MAIUSC+ALT++/- Espandi/Comprimi selezione Espande o contrae la selezione corrente nell'editor
MAIUSC + ALT + . Inserisci punto di inserimento corrispondente successivo Aggiunge una selezione e un cursore nella posizione successiva che corrisponde alla selezione corrente
CTRL+Q Ricerca Consente di effettuare una ricerca all'interno di tutte le impostazioni di Visual Studio
F5 Avvia debug Avvia il debug dell'applicazione
CTRL+F5 Esecuzione senza debug Esegue l'applicazione in locale senza debug
CTRL+K,D (profilo predefinito) o CTRL+E,D (profilo C#) Formatta documento Corregge le violazioni alle regole di formattazione nel file in base alle impostazioni relative alle nuove righe, alla spaziatura e ai rientri
CTRL+\,CTRL+E (Profilo predefinito) o CTRL+W,E (Profilo C#) Visualizzazione dell'elenco errori Consente di visualizzare tutti gli errori nel documento, nel progetto o nella soluzione
ALT + PGSU/PGGIÙ Passa a problema successivo/precedente Passare all'errore precedente/successivo, all'avviso, al suggerimento nel documento
CTRL+K,/ Attiva/Disattiva commento a riga singola/Rimuovi commento Questo comando aggiunge o rimuove un commento a riga singola a seconda che la selezione sia o meno già commentata
CTRL+MAIUSC+/ Attiva/Disattiva commento per il blocco/Rimuovi commento Questo comando aggiunge o rimuove i commenti di blocco a seconda di ciò che è stato selezionato

Nota

Alcune estensioni separano i tasti di scelta rapida predefiniti di Visual Studio. È possibile ripristinare le impostazioni predefinite dei tasti di scelta rapida passando a Strumenti>Importa ed Esporta Impostazioni> Impostare tutte le impostazioni o Opzioni>strumenti>Reimposta tastiera.>

Per altre informazioni sui tasti di scelta rapida e i comandi, vedere Tasti di scelta rapida per la produttività. In alternativa, vedere Tasti di scelta rapida in Visual Studio per un elenco completo insieme a un foglio informativo scaricabile.

Visual Studio include una funzionalità denominata Vai a tutti che è possibile usare per passare rapidamente a qualsiasi dichiarazione di file, tipo, membro o simbolo. Per aprirlo dalla barra dei menu, selezionare Modifica>Vai a Vai a>tutti. In alternativa, è possibile aprirlo usando la scelta rapida da tastiera CTRL+T.

Viene visualizzata una piccola finestra nella parte superiore destra dell'editor del codice.

Screenshot of the Go To All window in Visual Studio.

Screenshot of the Go To All window.

È possibile usare questa funzionalità per eseguire le azioni seguenti:

  • Modificare la posizione della barra di ricerca o disattivare l'anteprima dello spostamento live usando l'icona a forma di ingranaggio .
  • Filtrare i risultati usando la sintassi , t mytypead esempio .
  • Limitare l'ambito di ricerca al documento corrente.
  • La corrispondenza camelCase è supportata.

Per altre informazioni su Vai a tutti, vedere Trovare il codice usando i comandi Vai a.

Applicare le regole di stile del codice

È possibile usare un file EditorConfig per codificare le convenzioni per la scrittura del codice e spostarle con l'origine.

Code style enforcement in Visual Studio

  • Aggiungere un valore predefinito o . File EditorConfig in stile NET nel progetto scegliendo Aggiungi>nuovo elemento dal menu a comparsa Aggiungi menu di scelta rapida in Esplora soluzioni. Quindi, nella finestra di dialogo Aggiungi nuovo elemento cercare "editorconfig". Selezionare uno dei due modelli di elemento File editorconfig e quindi scegliere Aggiungi.

Screenshot of the EditorConfig file templates for C# in Visual Studio.

Screenshot of the EditorConfig item templates in Visual Studio.

  • Creare automaticamente un file editorconfig in base alle impostazioni di stile del codice in Strumenti>Opzioni>Editor di testo>C#>Stile codice.

Screenshot that shows how to generate an .editorconfig file from settings in Visual Studio.

Screenshot that shows how to generate an .editorconfig file from Visual Studio settings.

  • La funzionalità di inferenza del codice di IntelliCode per Visual Studio deduce gli stili di codice dal codice esistente. Crea quindi un file EditorConfig nonempty con le preferenze di stile del codice già definite.

  • Configurare il livello di gravità di una regola di stile del codice direttamente tramite l'editor. Se non si dispone di un file con estensione editorconfig, Visual Studio ne genera uno automaticamente. Posizionare il cursore sull'errore, l'avviso o il suggerimento e digitare CTRL+. Per aprire il menu Azioni rapide e refactoring. Selezionare Configura o Elimina problemi. Selezionare quindi la regola e scegliere il livello di gravità che si vuole configurare per la regola. Questa azione aggiorna l'editorConfig esistente con la nuova gravità della regola.

Screenshot of how to configure the severity of a code style rule from within the editor.

Configure the severity level of a code style rule directly in the editor

Vedere la documentazione relativa alle opzioni delle regole in stile codice .NET, che include anche un esempio di file EditorConfig completo.

Pulizia del codice

Visual Studio offre la formattazione on-demand del file di codice, incluse le preferenze di stile per il codice, attraverso la funzionalità Pulizia del codice. Per eseguire Pulizia codice, selezionare l'icona della scopa nella parte inferiore dell'editor o premere CTRL+K, CTRL+E.

Screenshot of the Code Cleanup button and options.

Screenshot of Code Cleanup button.

È anche possibile eseguire la pulizia del codice per l'intero progetto o soluzione. Fare clic con il pulsante destro del mouse sul nome del progetto o della soluzione in Esplora soluzioni, selezionare Analizza e Pulizia codice e quindi esegui pulizia del codice.

Screenshot of how to run Analyze and Code Cleanup across an entire project or solution.

Screenshot of how to run Code Cleanup across an entire project or solution.

Oltre alla formattazione del file in termini di spazi, rientri e così via, Pulizia del codice applica anche gli stili del codice selezionati. Le preferenze per ogni stile del codice vengono lette dal file EditorConfig, se ce n'è uno per il progetto, o dalle impostazioni di stile del codice nella finestra di dialogo Opzioni.

Refactoring e correzioni del codice

Visual Studio include numerosi refactoring, azioni di generazione del codice e correzioni del codice. Le sottolineature rosse rappresentano errori, quelle verdi rappresentano gli avvisi e tre punti grigi rappresentano suggerimenti per il codice. È possibile accedere alle correzioni del codice selezionando la lampadina o l'icona del cacciavite oppure premendo CTRL+ o ALT+INVIO. Ogni correzione è dotata di una finestra di anteprima che mostra come funziona la correzione in un diff di codice live.

Le correzioni rapide e i refactoring più comuni includono:

  • Rinomina
  • Estrai metodo
  • Cambia firma metodo
  • Genera costruttore
  • Genera metodo
  • Sposta il tipo nel file
  • Aggiungi il controllo Null
  • Aggiungi parametro
  • Rimuovi istruzioni using non necessarie
  • Ciclo foreach verso query o metodi LINQ
  • Pull di membri

Per altre informazioni, vedere Funzionalità di generazione del codice.

È possibile installare gli analizzatori .NET per contrassegnare i problemi di codice. Oppure è possibile scrivere refactoring o correzioni del codice propri con gli analizzatori Roslyn.

Diversi membri della community hanno scritto estensioni gratuite che aggiungono altre ispezioni del codice:

Accesso agli utilizzi, all'implementazione e agli assembly decompilati

Visual Studio include molte funzionalità che consentono di eseguire ricerche e di esplorare il codice.

Funzionalità Collegamento Dettagli/Miglioramenti
Trova tutti i riferimenti MAIUSC+F12 I risultati sono colorati e possono essere raggruppati per progetto, definizione e tipo riferimento, ad esempio lettura o scrittura. È anche possibile "bloccare" i risultati.
Vai all'implementazione CTRL+F12 È possibile usare Vai a definizione nella parola chiave override per passare al membro sostituito
Vai a definizione F12 o CTRL+clic Premere CTRL mentre si fa clic per passare alla definizione
Visualizza definizione ALT+F12 Visualizzazione inline di una definizione
Visualizzatore di struttura Linee grigie tratteggiate tra parentesi graffe Passare il mouse per visualizzare la struttura del codice
Spostamento agli assembly decompilati F12 o CTRL+clic Passare all'origine esterna (decompilata con ILSpy) abilitando la funzionalità: Strumenti>Opzioni>Editor di testo>C#>Avanzate>Abilita spostamento a origini decompilate.

Go To All and Find All References

Funzionalità IntelliSense migliorata

Usare IntelliCode per Visual Studio per ottenere il completamento del codice con riconoscimento del contesto invece di un semplice elenco in ordine alfabetico.

Unit test

Sono stati apportati numerosi miglioramenti all'esperienza di test. È possibile eseguire il test con i framework di test MSTest (MSTest v1 o MSTest v2), NUnit e XUnit .

  • L'individuazione dei test in Esplora test è veloce.

  • È possibile organizzare i test in Esplora test con l'ordinamento gerarchico.

Hierarchy view for Text Explorer in Visual Studio

  • Live Unit Testing esegue in modo continuo i test interessati dalle modifiche del codice e aggiorna le icone dell'editor inline per comunicare lo stato dei test. Includere o escludere progetti di test o test specifici dal set di test attivi. (Solo per Visual Studio Enterprise Edition.)

Per altre informazioni, vedere Nozioni di base sugli unit test.

Debug

Visual Studio include le funzionalità di debug seguenti:

  • La possibilità di cercare una stringa all'interno delle finestre Espressioni di controllo, Auto e Variabili locali.
  • L'esecuzione fino alla riga selezionata che consente di passare il puntatore del mouse accanto a una riga di codice, fare clic sull'icona verde di riproduzione ed eseguire il programma fino a raggiungere tale riga.
  • L'Helper eccezioni che inserisce le informazioni più importanti al primo livello della finestra di dialogo, ad esempio quale variabile è null in una NullReferenceException.
  • Il debug Torna indietro che consente di tornare ai punti di interruzione o ai passaggi precedenti e visualizzare lo stato precedente dell'applicazione.
  • Il debug di snapshot che consente di esaminare lo stato di un'applicazione Web attiva nel momento in cui viene generata un'eccezione (è necessario essere in Azure).

Screenshot of the Exception Helper next to a line of code.

Exception Helper in Visual Studio

Controllo della versione

In Visual Studio 2022 è possibile usare Git direttamente dall'IDE per creare, esaminare, estrarre ed eseguire richieste pull. Per altre informazioni, vedere Come Visual Studio semplifica il controllo della versione con Git.

È possibile usare Git o TFVC per archiviare e aggiornare il codice in Visual Studio.

  • In Visual Studio 2019 versione 16.8 e successive è possibile usare Git direttamente nell'IDE per creare, esaminare, estrarre ed eseguire richieste pull.

  • In Visual Studio 2019 versione 16.7 e precedenti installare le richieste pull per l'estensione di Visual Studio per creare, esaminare, estrarre ed eseguire richieste pull senza uscire da Visual Studio.

Quali altre funzionalità occorre conoscere

Ecco un elenco delle funzionalità di editor e produttività per rendere più efficiente la scrittura del codice. Alcune funzionalità potrebbero essere abilitate perché sono disattivate per impostazione predefinita.

Funzionalità Dettagli Abilitazione
Individuare il file in Esplora soluzioni Evidenzia il file attivo in Esplora soluzioni Strumenti>Opzioni>Progetti e soluzioni>Tieni traccia degli elementi attivi in Esplora soluzioni
Aggiungere le direttive using per i tipi in assembly di riferimento e pacchetti NuGet Visualizza una lampadina di errore con una correzione del codice per installare un pacchetto NuGet per un tipo senza riferimenti Strumenti>Opzioni>Editor di testo>C#>Avanzate>Suggerisci le direttive using per i tipi in assembly di riferimento e Suggerisci le direttive using per i tipi in pacchetti NuGet
Abilita analisi della soluzione completa Visualizza tutti gli errori della soluzione in Elenco errori Strumenti>Opzioni>Editor di testo>C#>Avanzate>Abilita analisi della soluzione completa
Abilita spostamento a origini decompilate Consente l'uso di Vai a definizione per tipi o membri di origini esterne e del decompilatore ILSpy per visualizzare i corpi dei metodi Strumenti>Opzioni>Editor di testo>C#>Avanzate>Abilita spostamento a origini decompilate
Modalità di terminazione/suggerimento Modifica il comportamento di completamento in IntelliSense. Gli sviluppatori con sfondi IntelliJ tendono a usare un'impostazione non predefinita qui. Modificare>la modalità di completamento di IntelliSense>(o premere CTRL+ALT+SPAZIO nell'editor)
CodeLens Visualizza le informazioni di riferimento del codice e la cronologia modifiche nell'editor (gli indicatori CodeLens del controllo del codice sorgente non sono disponibili nell'edizione Visual Studio Community). Strumenti>Opzioni>Editor di testo>Tutti i linguaggi>CodeLens
Frammenti di codice Utili per di generare codice boilerplate comune Digitare un nome di frammento di codice e premere TAB due volte.
Incollare JSON o XML come classi Copiare qualsiasi frammento di testo JSON o XML negli Appunti e incollarlo come classi .NET fortemente tipate in qualsiasi file di codice C#. Modifica>Incolla speciale>incolla JSON come classi (o Incolla xml come classi)
Copiare e tagliare il rientro Copiare il codice da Visual Studio a un altro programma (Outlook, Teams e così via), senza dover correggere manualmente il rientro dopo aver incollato il codice. Disponibile in Visual Studio 2022 versione 17.7 e successive.