CA2251 : utilisez String.Equals plutôt que String.Compare

Propriété Value
Identificateur de la règle CA2251
Titre Utiliser String.Equals sur String.Compare
Catégorie Utilisation
Le correctif est cassant ou non cassant Sans rupture
Activé par défaut dans .NET 8 Non

Cause

Le résultat d’un appel à String.Compare est comparé à zéro.

Description de la règle

String.Compare est conçu pour produire une comparaison d’ordre total qui peut être utilisée à des fins de tri. Si vous vous souciez uniquement du fait que les chaînes soient égales, il est à la fois plus clair et probablement plus rapide d’utiliser une surcharge équivalente de String.Equals.

Comment corriger les violations

Pour corriger les violations de cette règle, remplacez l’expression comparant le résultat de String.Compare par un appel à String.Equals.

Quand supprimer les avertissements

Vous pouvez sans risque supprimer un avertissement de cette règle.

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 CA2251
// The code that's violating the rule is on this line.
#pragma warning restore CA2251

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.CA2251.severity = none

Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.

Voir aussi