Share via


CA1020: Evitar los espacios de nombres con pocos tipos

Elemento Valor
RuleId CA1020
Category Microsoft.Design
Cambio importante Problemático

Causa

Un espacio de nombres distinto del espacio de nombres global contiene menos de cinco tipos.

Nota

Esta regla está en desuso. Para más información, consulte Reglas en desuso.

Descripción de la regla

Asegúrese de que hay una organización lógica para cada espacio de nombres y que existe una razón para colocar los tipos en un espacio de nombres apenas lleno. Los espacios de nombres deben contener tipos que se usen juntos en la mayoría de los escenarios. Si sus aplicaciones son mutuamente excluyentes, los tipos deben encontrarse en espacios de nombres independientes. Por ejemplo, el espacio de nombres System.Web.UI contiene tipos que se usan en aplicaciones web y el espacio de nombres System.Windows.Forms contiene tipos que se usan en aplicaciones basadas en Windows. Aunque ambos espacios de nombres tienen tipos que controlan aspectos de la interfaz de usuario, estos tipos no están diseñados para su uso en la misma aplicación. Por lo tanto, se deben colocar en espacios de nombres independientes. Una organización cuidadosa de los espacios de nombres también puede ser útil porque aumenta la detectabilidad de una característica. Mediante el examen de la jerarquía de espacios de nombres, los consumidores de bibliotecas deben poder localizar los tipos que implementan una característica.

Nota

Los tipos y permisos en tiempo de diseño no deben combinarse en otros espacios de nombres para cumplir con esta guía. Estos tipos pertenecen a sus propios espacios de nombres situados debajo del espacio de nombres principal y los espacios de nombres deben terminar en .Design y .Permissions, respectivamente.

Cómo corregir infracciones

Para corregir una infracción de esta regla, intente combinar espacios de nombres que contengan solo unos pocos tipos en un único espacio de nombres.

Cuándo suprimir las advertencias

Es seguro suprimir una advertencia de esta regla cuando el espacio de nombres no contiene tipos que se usan con los tipos de los otros espacios de nombres.