Usare la funzione locale anziché lambda (IDE0039)

Proprietà Valore
ID regola IDE0039
Titolo Usare la funzione locale anziché lambda
Categoria Stile
Subcategory Regole del linguaggio (preferenze a livello di espressione)
Lingue applicabili C#
Opzioni csharp_style_prefer_local_over_anonymous_function

Panoramica

Questa regola di stile riguarda l'uso di funzioni locali e espressioni lambda (funzioni anonime ).

Opzioni

Le opzioni specificano il comportamento da applicare alla regola. Per informazioni sulla configurazione delle opzioni, vedere Formato delle opzioni.

csharp_style_prefer_local_over_anonymous_function

Proprietà Valore Descrizione
Nome opzione csharp_style_prefer_local_over_anonymous_function
Valori delle opzioni true Preferire le funzioni locali rispetto alle funzioni anonime
false Preferire funzioni anonime rispetto alle funzioni locali
Valore dell'opzione predefinito true
// csharp_style_prefer_local_over_anonymous_function = true
int fibonacci(int n)
{
    return n <= 1 ? 1 : fibonacci(n-1) + fibonacci(n-2);
}

// csharp_style_prefer_local_over_anonymous_function = false
Func<int, int> fibonacci = (int n) =>
{
    return n <= 1 ? 1 : fibonacci(n - 1) + fibonacci(n - 2);
};

Eliminare un avviso

Se si vuole eliminare solo una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable IDE0039
// The code that's violating the rule is on this line.
#pragma warning restore IDE0039

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità none su nel file di configurazione.

[*.{cs,vb}]
dotnet_diagnostic.IDE0039.severity = none

Per disabilitare tutte le regole in stile codice, impostare la gravità per la categoria Stylenone su nel file di configurazione.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Vedi anche