CA1717: Solo las enumeraciones FlagsAttribute deberían tener nombres en plural
Nombre de tipo |
OnlyFlagsEnumsShouldHavePluralNames |
Identificador de comprobación |
CA1717 |
Categoría |
Microsoft.Naming |
Cambio problemático |
Sí |
Motivo
El nombre de una enumeración visible externamente termina con una palabra en plural y la enumeración no está marcada con el atributo System.FlagsAttribute.
Descripción de la regla
Las convenciones de nomenclatura dictan que un nombre en plural para una enumeración indica que se pueden especificar varios valores de enumeración simultáneamente.FlagsAttribute indica a los compiladores que la enumeración debe tratarse como un campo de bits que habilita operaciones bit a bit en la enumeración.
Si sólo se puede especificar un valor de enumeración a la vez, el nombre de la enumeración debe ser una palabra en singular.Por ejemplo, una enumeración que define los días de la semana podría usarse en una aplicación en la que se pueden especificar varios días.Esta enumeración debería tener FlagsAttribute y podría denominarse 'Días'.Una enumeración similar que permite especificar sólo un día no tendría el atributo y se podría denominar 'Día'.
Las convenciones de nomenclatura proporcionan una apariencia común a las bibliotecas orientadas a Common Language Runtime.Esto reduce el tiempo de aprendizaje necesario para la nueva biblioteca de software y aumenta la confianza por parte del cliente en lo que respecta a que la biblioteca fue desarrollada por un especialista en desarrollo de código administrado.
Cómo corregir infracciones
Cambie el nombre de la enumeración a una palabra en singular o agregue FlagsAttribute.
Cuándo suprimir advertencias
Puede suprimir de forma segura una advertencia de la regla si el nombre termina con una palabra en singular.
Reglas relacionadas
CA1714: Las enumeraciones Flags deberían tener nombres en plural
CA1027: Marcar enumeraciones con FlagsAttribute
CA2217: No marcar enumeraciones con FlagsAttribute