CA1717: apenas enums FlagsAttribute devem ter nomes pluraisCA1717: Only FlagsAttribute enums should have plural names

NomeDoTipoTypeName OnlyFlagsEnumsShouldHavePluralNamesOnlyFlagsEnumsShouldHavePluralNames
CheckIdCheckId CA1717CA1717
CategoriaCategory Microsoft.NamingMicrosoft.Naming
Alteração SignificativaBreaking Change QuebraBreaking

CausaCause

O nome de uma enumeração visível externamente termina em uma palavra no plural e a enumeração não está marcada com o System.FlagsAttribute atributo.The name of an externally visible enumeration ends in a plural word and the enumeration is not marked with the System.FlagsAttribute attribute.

Descrição da regraRule description

Convenções de nomenclatura determinam que um nome no plural para uma enumeração indica que mais de um valor da enumeração pode ser especificado simultaneamente.Naming conventions dictate that a plural name for an enumeration indicates that more than one value of the enumeration can be specified simultaneously. O FlagsAttribute informa os compiladores que a enumeração deve ser tratada como um campo de bits que permite que operações bit a bit na enumeração.The FlagsAttribute tells compilers that the enumeration should be treated as a bit field that enables bitwise operations on the enumeration.

Se apenas um valor de uma enumeração pode ser especificado por vez, o nome da enumeração deve ser uma palavra no singular.If only one value of an enumeration can be specified at a time, the name of the enumeration should be a singular word. Por exemplo, uma enumeração que define os dias da semana pode ser destinada para uso em um aplicativo onde você pode especificar vários dias.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 enumeração deve ter o FlagsAttribute e poderia ser chamado 'Dias'.This enumeration should have the FlagsAttribute and could be called 'Days'. Uma enumeração semelhante que permite que um único dia seja especificada não teria o atributo e pode ser chamado 'Day'.A similar enumeration that allows only a single day to be specified would not have the attribute, and could be called 'Day'.

Convenções de nomenclatura de fornecem uma aparência comum para bibliotecas que direcionam o common language runtime.Naming conventions provide a common look for libraries that target the common language runtime. Isso reduz o tempo que é necessário para conhecer uma nova biblioteca de software e aumenta a confiança do cliente que a biblioteca foi desenvolvida por alguém que tenha experiência em desenvolvimento de código gerenciado.This reduces the time that is required to learn a new software library, and increases customer confidence that the library was developed by someone who has expertise in developing managed code.

Como corrigir violaçõesHow to fix violations

Verifique o nome da enumeração uma palavra no singular ou adicionar o FlagsAttribute.Make the name of the enumeration a singular word or add the FlagsAttribute.

Quando suprimir avisosWhen to suppress warnings

É seguro suprimir um aviso da regra se o nome terminar em uma palavra no singular.It is safe to suppress a warning from the rule if the name ends in a singular word.

CA1714: enums de sinalizadores devem ter nomes pluraisCA1714: Flags enums should have plural names

CA1027: marcar enums com FlagsAttributeCA1027: Mark enums with FlagsAttribute

CA2217: não marcar enums com FlagsAttributeCA2217: Do not mark enums with FlagsAttribute

Consulte tambémSee also