CA1714: Las enumeraciones Flags deberían tener nombres en pluralCA1714: Flags enums should have plural names

TypeNameTypeName FlagsEnumsShouldHavePluralNamesFlagsEnumsShouldHavePluralNames
Identificador de comprobaciónCheckId CA1714CA1714
CategoríaCategory Microsoft.NamingMicrosoft.Naming
Cambio problemáticoBreaking Change ProblemáticoBreaking

MotivoCause

Una enumeración pública tiene el System.FlagsAttribute y su nombre no termina en '.A public enumeration has the System.FlagsAttribute and its name does not end in 's'.

Descripción de la reglaRule Description

Tipos que se marcan con FlagsAttribute tienen nombres que están en plurales porque el atributo indica que se puede especificar más de un valor.Types that are marked with FlagsAttribute have names that are plural because the attribute indicates that more than one value can be specified. Por ejemplo, una enumeración que define los días de la semana puede ser pensada para su uso en una aplicación donde puede especificar varios días.For example, an enumeration that defines the days of the week might be intended for use in an application where you can specify multiple days. Esta enumeración debe tener la FlagsAttribute y podría denominarse 'Días'.This enumeration should have the FlagsAttribute and could be called 'Days'. Una enumeración similar que permite sólo un día que se especifique el atributo no es necesario y podría ser denominada 'Day'.A similar enumeration that allows only a single day to be specified would not have the attribute, and could be called 'Day'.

Las convenciones de nomenclatura proporcionan una apariencia común para las bibliotecas destinadas a Common Language Runtime.Naming conventions provide a common look for libraries that target the common language runtime. Esto reduce la curva de aprendizaje necesaria para las nuevas bibliotecas de software y aumenta la confianza del cliente respecto a que la biblioteca se haya desarrollado por parte de un especialista en desarrollo de código administrado.This reduces the learning curve that is required for new software libraries, and increases customer confidence that the library was developed by someone who has expertise in developing managed code.

Cómo corregir infraccionesHow to Fix Violations

Cambie el nombre de la enumeración en una palabra en plural o quite el FlagsAttribute atributo si varios valores de enumeración no deben especificarse al mismo tiempo.Make the name of the enumeration a plural word, or remove the FlagsAttribute attribute if multiple enumeration values should not be specified simultaneously.

Cuándo suprimir advertenciasWhen to Suppress Warnings

Es seguro suprimir una infracción si el nombre es una palabra en plural pero no termina en del '.It is safe to suppress a violation if the name is a plural word but does not end in 's'. Por ejemplo, si la enumeración de varios días que se ha descrito anteriormente se denominara 'DíasDeLaSemana', esto infringiría la lógica de la regla pero no su intención.For example, if the multiple-day enumeration that was described previously were named 'DaysOfTheWeek', this would violate the logic of the rule but not its intent. Este tipo de infracciones debería suprimirse.Such violations should be suppressd.

CA1027: Marcar enumeraciones con FlagsAttributeCA1027: Mark enums with FlagsAttribute

CA2217: No marcar enumeraciones con FlagsAttributeCA2217: Do not mark enums with FlagsAttribute

Vea tambiénSee Also

System.FlagsAttributeSystem.FlagsAttribute
Diseño de enumeracionesEnum Design