Utiliser une fonction locale au lieu d’une fonction lambda (IDE0039)
Propriété | Value |
---|---|
Identificateur de la règle | IDE0039 |
Titre | Utiliser une fonction locale au lieu d’une fonction lambda |
Catégorie | Style |
Sous-catégorie | Règles de langage (préférences au niveau de l’expression) |
Langues applicables | C# 7.0+ |
Options | csharp_style_pattern_local_over_anonymous_function |
Vue d’ensemble
Cette règle de style concerne l’utilisation de fonctions locales et d’expressions lambda (fonctions anonymes).
Options
Les options spécifient le comportement que vous souhaitez appliquer à la règle. Pour plus d’informations sur la configuration des options, consultez Le format d’option.
csharp_style_pattern_local_over_anonymous_function
Propriété | Valeur | Description |
---|---|---|
Nom de l’option | csharp_style_pattern_local_over_anonymous_function | |
Valeurs d’option | true |
Préférer les fonctions locales par rapport aux fonctions anonymes |
false |
Préférer les fonctions anonymes par rapport aux fonctions locales | |
Valeur d’option par défaut | true |
// csharp_style_pattern_local_over_anonymous_function = true
int fibonacci(int n)
{
return n <= 1 ? 1 : fibonacci(n-1) + fibonacci(n-2);
}
// csharp_style_pattern_local_over_anonymous_function = false
Func<int, int> fibonacci = null;
fibonacci = (int n) =>
{
return n <= 1 ? 1 : fibonacci(n - 1) + fibonacci(n - 2);
};
Supprimer un avertissement
Si vous souhaitez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver, puis réactivez la règle.
#pragma warning disable IDE0039
// The code that's violating the rule is on this line.
#pragma warning restore IDE0039
Pour désactiver la règle d’un fichier, d’un dossier ou d’un projet, définissez sa gravité none
dans le fichier de configuration.
[*.{cs,vb}]
dotnet_diagnostic.IDE0039.severity = none
Pour désactiver toutes les règles de style de code, définissez la gravité de la catégorie Style
none
dans le fichier de configuration.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements d’analyse du code.