Supprimer une expression lambda inutile (IDE0200)
Propriété | Valeur |
---|---|
Identificateur de la règle | IDE0200 |
Titre | Supprimer une expression lambda inutile |
Catégorie | Style |
sous-catégorie | Règles de langage (préférences de bloc de code) |
langues applicables | C# 11+ |
Options | csharp_style_prefer_method_group_conversion |
Aperçu
Cette règle signale l’utilisation d’une expression lambda où elle n’est pas nécessaire. Les expressions lambda peuvent être inutiles lorsque les valeurs suivantes sont toutes vraies :
- L’expression inclut un appel de méthode.
- L’expression lambda a le même nombre et l’ordre des paramètres que l’appel de méthode.
- L’appel de méthode n’a aucun effet secondaire.
- L’expression lambda n’est pas affectée à un type non délégué.
- Si l’appel est une méthode générique, les arguments de type sont fournis.
- Le type de retour de la méthode appelée peut être converti en type de retour de l’expression lambda.
- Il n’existe qu’une seule méthode applicable dans le groupe de méthodes.
Options
Les options spécifient le comportement que la règle doit adopter. Pour plus d’informations sur la configuration des options, consultez Format d’option.
csharp_style_prefer_method_group_conversion
Propriété | Valeur | Description |
---|---|---|
nom de l’option | csharp_style_prefer_method_group_conversion | |
Valeurs d’option | true |
Préférez convertir une expression lambda en groupe de méthodes. |
false |
Il désactive la règle. | |
valeur d’option par défaut | true |
Exemple
// Code with violations.
bool IsEven(int x) => x % 2 == 0;
_ = new[] { 1, 2, 3 }.Where(n => IsEven(n));
// Fixed code.
bool IsEven(int x) => x % 2 == 0;
_ = new[] { 1, 2, 3 }.Where(IsEven);
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 IDE0200
// The code that's violating the rule is on this line.
#pragma warning restore IDE0200
Pour désactiver la règle d’un fichier, d’un dossier ou d’un projet, définissez sa gravité sur none
dans le fichier de configuration .
[*.{cs,vb}]
dotnet_diagnostic.IDE0200.severity = none
Pour désactiver toutes les règles de style de code, définissez la gravité de la catégorie Style
sur 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.