Lingua e regole non necessarie

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

Questa categoria include anche regole che identificano parti della codebase non necessarie e che possono essere refactoring o rimosse. La presenza di codice non necessario indica uno 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 non necessario senza effetti collaterali e comporta un sovraccarico delle prestazioni non necessario.
  • 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:

  • Regole di stile .NET: 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_.
  • Regole di stile di Visual Basic: regole specifiche del codice Visual Basic. I nomi delle opzioni per queste regole iniziano con il prefisso visual_basic_style_.

Formato opzione

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)

or

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.

  • Gravità (facoltativa 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à è 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 non durante la compilazione.

    Se si usa .NET 8 SDK 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 versione successiva oppure su preview.
    • Impostare la gravità usando invece la sintassi di configurazione della gravità basata su ID 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 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

Regole di stile .NET (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

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

Regole di stile C#:

Regole di stile di Visual Basic:

Preferenze dei campi

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

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

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

Preferenze del modificatore

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

Regole di stile C#:

Preferenze di nuova riga

  • Consenti più righe vuote (IDE2000)
  • Consenti istruzioni incorporate sulla stessa riga (IDE2001)
  • Consenti righe vuote tra parentesi graffe consecutive (IDE2002)
  • Istruzione Allow immediatamente dopo il blocco (IDE2003)
  • Consenti riga vuota dopo i due punti nell'inizializzatore del costruttore (IDE2004)
  • Consenti riga vuota dopo il token nell'espressione condizionale (IDE2005)
  • Consenti riga vuota dopo il token nell'espressione freccia (IDE2006)

Preferenze di controllo dei valori Null

Regole di stile C#:

Preferenze per i parametri

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

Preferenze per parentesi

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

Preferenze di corrispondenza dei criteri

Regole di stile C#:

Preferenze di eliminazione

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

This.preferenze e me.

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

var Preferenze

Regole di stile C#:

Vedi anche