CA1724 : Les noms de types ne doivent pas être identiques aux espaces de noms
Propriété | Value |
---|---|
Identificateur de la règle | CA1724 |
Titre | Les noms de types ne doivent pas être identiques aux espaces de noms |
Catégorie | Dénomination |
Le correctif est cassant ou non cassant | Rupture |
Activé par défaut dans .NET 8 | Non |
Cause
Un nom de type correspond à un nom d’espace de noms référencé qui a un ou plusieurs types visibles en externe. La comparaison de nom ne respecte pas la casse.
Description de la règle
Les noms des types créés par l’utilisateur ne doivent pas être identiques aux noms des espaces de noms référencés qui ont des types visibles en externe. Enfreindre cette règle peut réduire la facilité d'utilisation de votre bibliothèque.
Comment corriger les violations
Renommez le type de sorte qu’il ne soit pas identique au nom d’un espace de noms référencé qui a des types visibles en externe.
Quand supprimer les avertissements
Pour un nouveau développement, aucun scénario connu ne se produit où vous devez supprimer un avertissement de cette règle. Avant de supprimer l’avertissement, réfléchissez soigneusement au fait que les utilisateurs de votre bibliothèque risquent d’être perplexes face aux noms identiques. Pour les bibliothèques d’expédition, vous devrez peut-être 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 CA1724
// The code that's violating the rule is on this line.
#pragma warning restore CA1724
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.CA1724.severity = none
Pour plus d’informations, consultez Comment supprimer les avertissements de l’analyse de code.
Exemple
namespace MyNamespace
{
// This class violates the rule
public class System
{
}
}