Supprimer l’expression lambda inutile (IDE0200)
Propriété | Value |
---|---|
Identificateur de la règle | IDE0200 |
Titre | Supprimer l’expression lambda inutile |
Catégorie | Style |
Sous-catégorie | Règles du langage (préférences de blocs de code) |
Langages applicables | C# 11 |
Options | csharp_style_prefer_method_group_conversion |
Vue d’ensemble
Cette règle signale l’utilisation d’une expression lambda lorsqu’elle n’est pas nécessaire. Les expressions lambda peuvent être inutiles lorsque les éléments suivants sont tous vrais :
- L’expression inclut un appel de méthode.
- L’expression lambda a le même nombre et le même ordre de 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 vous souhaitez que la règle applique. Pour plus d’informations sur la configuration des options, consultez Format d’option.
csharp_style_prefer_method_group_conversion
Propriété | Valeur | Description |
---|---|---|
Nom d'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 voulez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver et réactiver 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 sur un fichier, un dossier ou 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 de l’analyse de code.