CA1830 : Préférer les surcharges de méthode Append et Insert fortement typées sur StringBuilder
Propriété | Value |
---|---|
Identificateur de la règle | CA1830 |
Titre | Préférer les surcharges de méthode Append et Insert fortement typées sur StringBuilder |
Catégorie | Performances |
Le correctif est cassant ou non cassant | Sans rupture |
Activé par défaut dans .NET 8 | À titre de suggestion |
Cause
Une méthode StringBuilderAppend
ou Insert
a été appelée avec un argument résultant de l’appel à ToString
sur un type pour lequel la méthode Append
ou Insert
a une surcharge dédiée.
Description de la règle
Append et Insert fournissent des surcharges pour plusieurs types au-delà de String. Si possible, préférez les surcharges fortement typées plutôt que l’utilisation de ToString() et la surcharge basée sur des chaînes.
Comment corriger les violations
Supprimez le ToString()
inutile de l’appel.
using System.Text;
class C
{
int _value;
// Violation
public void Log(StringBuilder destination)
{
destination.Append("Value: ").Append(_value.ToString()).AppendLine();
}
// Fixed
public void Log(StringBuilder destination)
{
destination.Append("Value: ").Append(_value).AppendLine();
}
}
Quand supprimer les avertissements
Vous pouvez sanas risque supprimer une violation de cette règle si vous ne vous souciez pas de l’impact sur les performances dû aux allocations de chaînes inutiles.
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 CA1830
// The code that's violating the rule is on this line.
#pragma warning restore CA1830
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.CA1830.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour