CA1059 : Les membres ne doivent pas exposer certains types concrets
Élément | Valeur |
---|---|
ID de la règle | CA1059 |
Category | Microsoft.Design |
Modification avec rupture | Rupture |
Cause
Un membre visible à l’extérieur est un certain type concret ou expose certains types concrets via l’un de ses paramètres ou la valeur de retour. Actuellement, cette règle signale l’exposition des types concrets suivants :
- Type dérivé de System.Xml.XmlNode.
Notes
Cette règle est déconseillée. Pour plus d’informations, consultez Règles dépréciées.
Description de la règle
Un type concret est un type qui présente une implémentation complète et, par conséquent, peut être instancié. Pour permettre une utilisation généralisée du membre, remplacez le type concret par l’interface suggérée. Cela permet au membre d’accepter n’importe quel type qui implémente l’interface ou d’être utilisé lorsqu’un type qui implémente l’interface est attendu.
Le tableau suivant répertorie les types concrets ciblés et leurs remplacements suggérés.
Type concret | Remplacement |
---|---|
XPathDocument | System.Xml.XPath.IXPathNavigable. L’utilisation de l’interface dissocie le membre d’une implémentation spécifique d’une source de données XML. |
Comment corriger les violations
Pour corriger une violation de cette règle, remplacez le type concret par l’interface suggérée.
Quand supprimer les avertissements
Il est prudent de supprimer un message de cette règle si la fonctionnalité spécifique fournie par le type concret est requise.
Règles associées
CA1011 : Si possible, transmettez les types de base en tant que paramètres
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