Lingua e regole non necessarie

Le regole di stile codice influiscono sul modo in cui vengono usati vari costrutti dei linguaggi di programmazione .NET, ad esempio i modificatori e le parentesi.

Questa categoria include anche regole che identificano parti della base di codice che sono non necessarie e che possono essere ristrutturate o rimosse. La presenza di codice non necessario indica uno o più dei problemi seguenti:

  • Leggibilità: codice che inutilmente degrada la leggibilità.
  • Manutenibilità: il codice che non viene più usato dopo il refactoring e viene mantenuto inutilmente.
  • Prestazioni: calcolo superfluo, senza effetti collaterali, che comporta un inutile sovraccarico delle prestazioni.
  • Funzionalità: problema funzionale nel codice che rende ridondante il codice necessario. Ad esempio, IDE0060 contrassegna i parametri inutilizzati in cui il metodo ignora accidentalmente un parametro di input.

Le regole della lingua rientrano nelle categorie seguenti:

  • .NET regole di stile: regole applicabili sia a C# che a Visual Basic. I nomi delle opzioni per queste regole iniziano con il prefisso dotnet_style_.
  • Regole di stile C#: regole specifiche del codice C#. I nomi delle opzioni per queste regole iniziano con il prefisso csharp_style_.
  • Visual Basic regole di stile: regole specifiche per Visual Basic codice. I nomi delle opzioni per queste regole iniziano con il prefisso visual_basic_style_.

Formato delle opzioni

Molte delle regole del linguaggio hanno una o più opzioni associate per personalizzare lo stile preferito. Ad esempio, l'istruzione 'using' semplice (IDE0063) include l'opzione csharp_prefer_simple_using_statement associata che consente di definire se si preferisce una using dichiarazione o un'istruzione using . La regola applica le opzioni scelte a un livello specificato, ad esempio avviso o errore.

Le opzioni per le regole della lingua possono essere specificate in un file di configurazione con il formato seguente:

option_name = value (Visual Studio 2019 e versioni successive)

o

option_name = value:severity

  • valore

    Per ogni regola del linguaggio, specificare un valore che definisce se o quando preferire lo stile. Molte regole accettano un valore di true (preferisce questo stile) o false (non preferiscono questo stile). Altre regole accettano valori come when_on_single_line o never.

  • Severity (facoltativo in Visual Studio 2019 e versioni successive)

    La seconda parte della regola specifica il livello di gravità per la regola. In .NET 9 e versioni successive, la gravità viene sempre rispettata, ovvero all'interno degli IDE di sviluppo e durante le compilazioni della riga di comando. In .NET 8 e versioni precedenti, questa impostazione di gravità viene rispettata solo negli IDE di sviluppo, ad esempio Visual Studio e not durante la compilazione.

    Se si usa l'SDK .NET 8 o una versione precedente e si vuole rispettare la gravità in fase di compilazione, è possibile farlo in uno dei due modi seguenti:

    • Impostare la proprietà <AnalysisLevel> o <AnalysisLevelStyle> su 9.0 o un valore maggiore, oppure su preview.
    • Impostare invece la gravità utilizzando la sintassi di configurazione della gravità basata sull'ID della regola per gli analizzatori. La sintassi assume il formato dotnet_diagnostic.<rule ID>.severity = <severity>, ad esempio dotnet_diagnostic.IDE0040.severity = warning. Per altre informazioni, vedere Livello di gravità.

Suggerimento

A partire da Visual Studio 2019, è possibile configurare le regole di stile del codice dal menu della lampadina Azioni rapide dopo che si verifica una violazione dello stile.

Indice delle regole

Le regole del linguaggio e del codice non necessarie sono ulteriormente suddivise in sottocategorie, ad esempio preferenze a livello di espressione, preferenze del blocco di codice e preferenze del modificatore.

using preferenze di direttiva

.NET regole di stile (C# e Visual Basic):

Regole di stile C#:

Preferenze del blocco di codice

Regole di stile C#:

Membri con corpo di espressione

Regole di stile C#:

Preferenze a livello di espressione

.NET regole di stile (C# e Visual Basic):

Regole di stile C#:

Visual Basic regole di stile:

Preferenze dei campi

.NET regole di stile (C# e Visual Basic):

Preferenze relative alle parole chiave del linguaggio e ai tipi di framework

.NET regole di stile (C# e Visual Basic):

Preferenze del modificatore

.NET regole di stile (C# e Visual Basic):

Regole di stile C#:

Preferenze di nuova riga

.NET regole di stile (C# e Visual Basic):

Regole di stile C#:

† Le regole sono sperimentali e soggette a modifiche o rimozione.

Preferenze di controllo Null

Regole di stile C#:

Preferenze per i parametri

.NET regole di stile (C# e Visual Basic):

Preferenze per parentesi

.NET regole di stile (C# e Visual Basic):

Preferenze di pattern matching

Regole di stile C#:

Preferenze di eliminazione

.NET regole di stile (C# e Visual Basic):

Regole di stile C#:

This. e me. preferenze

.NET regole di stile (C# e Visual Basic):

var Preferenze

Regole di stile C#:

Vedi anche