CA1020: не используйте пространства имен с несколькими типами
TypeName |
AvoidNamespacesWithFewTypes |
CheckId |
CA1020 |
Категория |
Microsoft.Design |
Критическое изменение |
Критическое изменение |
Причина
В пространстве имен, отличном от глобального пространства имен, содержится меньше пяти типов.
Описание правила
Убедитесь, что каждое из используемых пространств имен имеет логическую организацию и существует веская причина для помещения типов в сильно разреженное пространство имен.Пространства имен должны содержать типы, которые используются во многих скриптах.Если их приложения являются взаимоисключающими, типы следует поместить в отдельные пространства имен.Например, в пространстве имен System.Web.UI содержатся типы, используемые в веб-приложениях, а в пространстве имен System.Windows.Forms содержатся типы, используемые в приложениях на основе Windows.Даже если оба пространства имен содержат типы, которые контролируют аспекты пользовательского интерфейса, такие типы не предназначены для использования в одном приложении. Поэтому они расположены в разных пространствах имен.Также полезно правильно организовывать пространства имен, поскольку в этом случае повышается возможность обнаружения функций.Изучив иерархию пространства имен, пользователи библиотек должны иметь возможность найти типы, которые реализуют ту или иную функцию.
![]() |
---|
Чтобы следовать этой рекомендации, не следует смешивать типы и разрешения времени разработки с другими пространствами имен.Эти типы принадлежат собственным пространствам имен, вложенным в главное пространство имен, и такие пространства имен должны заканчиваться постфиксами .Design и .Permissions соответственно. |
Устранение нарушений
Чтобы устранить нарушение данного правила, попробуйте объединить пространства имен, содержащие небольшое количество типов, в одно пространство.
Отключение предупреждений
Если пространство имен не содержит типов, используемых типами из других пространств имен, то отключение предупреждений о нарушении данного правила безопасно.