Använd lokal funktion i stället för lambda (IDE0039)
Egenskap | Värde |
---|---|
regel-ID | IDE0039 |
Rubrik | Använd lokal funktion i stället för lambda |
Kategori | Stil |
underkategori | Språkregler (inställningar på uttrycksnivå) |
Tillämpliga språk | C# |
alternativ | csharp_style_prefer_local_over_anonymous_function |
Överblick
Den här formatregeln gäller användningen av lokala funktioner jämfört med lambda-uttryck (anonyma funktioner).
Alternativ
Alternativ anger det beteende som du vill att regeln ska framtvinga. Information om hur du konfigurerar alternativ finns i Alternativformat.
csharp_style_föredra_lokalt_framför_anonym_funktion
Egenskap | Värde | Beskrivning |
---|---|---|
Alternativnamn | csharp_stil_föredra_lokal_över_anonim_funktion | |
Alternativvärden | true |
Föredrar lokala funktioner framför anonyma funktioner |
false |
Föredrar anonyma funktioner framför lokala funktioner | |
standardalternativvärde | 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);
};
Undertrycka en varning
Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och återaktiverar sedan regeln.
#pragma warning disable IDE0039
// The code that's violating the rule is on this line.
#pragma warning restore IDE0039
Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none
i konfigurationsfilen.
[*.{cs,vb}]
dotnet_diagnostic.IDE0039.severity = none
Om du vill inaktivera alla regler i kodformat anger du allvarlighetsgraden för kategorin Style
till none
i konfigurationsfilen .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Mer information finns i Så här utelämnar du kodanalysvarningar.