Usare la funzione locale anziché lambda (IDE0039)
Proprietà | Valore |
---|---|
ID regola | IDE0039 |
Titolo | Usare la funzione locale anziché lambda |
categoria | Stile |
sottocategoria | 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 rispetto alle espressioni lambda (funzioni anonime).
Opzioni
Le opzioni specificano il comportamento che si desidera imporre alla regola. Per informazioni sulla configurazione delle opzioni, vedere Formato opzione.
Preferenza stile C# per l'utilizzo di variabili locali rispetto a funzioni anonime (csharp_style_prefer_local_over_anonymous_function)
Proprietà | Valore | Descrizione |
---|---|---|
nome dell'opzione | stile_csharp_preferire_funzione_locale_rispetto_a_funzione_anonima | |
valori di opzione | true |
Preferire funzioni locali rispetto a funzioni anonime |
false |
Preferisce funzioni anonime rispetto alle funzioni locali | |
valore di 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 desidera 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à su none
nel file di configurazione .
[*.{cs,vb}]
dotnet_diagnostic.IDE0039.severity = none
Per disabilitare tutte le regole di tipo codice, impostare la gravità per la categoria Style
su none
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.