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 | Format |
Underkategori | Språkregler (inställningar på uttrycksnivå) |
Tillämpliga språk | C# |
Alternativ | csharp_style_prefer_local_over_anonymous_function |
Översikt
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_prefer_local_over_anonymous_function
Egenskap | Värde | Beskrivning |
---|---|---|
Alternativnamn | csharp_style_prefer_local_over_anonymous_function | |
Alternativvärden | true |
Föredra lokala funktioner framför anonyma funktioner |
false |
Föredra 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);
};
Ignorera en varning
Om du bara vill förhindra en enda överträdelse lägger du till preprocessor-direktiv i källfilen för att inaktivera och aktiverar sedan regeln igen.
#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 kodstil 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.