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.