CA1020 : Éviter les espaces de noms comportant peu de types

Élément Valeur
ID de la règle CA1020
Category Microsoft.Design
Modification avec rupture Rupture

Cause

Un espace de noms autre que l’espace de noms global contient moins de cinq types.

Notes

Cette règle est déconseillée. Pour plus d’informations, consultez Règles dépréciées.

Description de la règle

Vérifiez que chacun de vos espaces de noms bénéficie d’une organisation logique et qu’une raison valide justifie le placement des types dans un espace de noms peu rempli. Les espaces de noms doivent contenir des types qui sont utilisés ensemble dans la plupart des scénarios. Quand leurs applications s’excluent mutuellement, les types doivent se trouver dans des espaces de noms distincts. Par exemple, l’espace de noms System.Web.UI contient des types utilisés dans les applications web et l’espace de noms System.Windows.Forms contient des types utilisés dans les applications Windows. Même si les deux espaces de noms ont des types qui contrôlent les aspects de l’interface utilisateur, ces types ne sont pas conçus pour être utilisés dans la même application. Par conséquent, ils se trouvent dans des espaces de noms distincts. Une organisation prudente des espaces de noms peut également s’avérer utile, car elle augmente la détectabilité d’une fonctionnalité. En examinant la hiérarchie des espaces de noms, les consommateurs de bibliothèques doivent être en mesure de localiser les types qui implémentent une fonctionnalité.

Notes

Les types et autorisations au moment du design ne doivent pas être fusionnés dans d’autres espaces de noms pour se conformer à cette directive. Ces types appartiennent à leurs propres espaces de noms sous votre espace de noms principal, et les espaces de noms doivent finir dans .Design et .Permissions, respectivement.

Comment corriger les violations

Pour corriger une violation de cette règle, essayez de combiner des espaces de noms qui ne contiennent que quelques types dans un espace de noms unique.

Quand supprimer les avertissements

Il est prudent de supprimer un avertissement de cette règle lorsque l’espace de noms ne contient pas de types utilisés avec les types dans vos autres espaces de noms.