CA1717: Somente os enums FlagsAttribute devem ter nomes plural
TypeName |
OnlyFlagsEnumsShouldHavePluralNames |
CheckId |
CA1717 |
<strong>Categoria</strong> |
Microsoft.Naming |
Alteração significativa |
Quebrando |
Causa
O nome de uma enumeração visível externamente termina em uma palavra no plural e a enumeração não é marcada com o System.FlagsAttribute atributo.
Descrição da regra
Convenções de nomenclatura determinam que um nome no plural para uma enumeração indica a mais de um valor da enumeração pode ser especificado simultaneamente. O FlagsAttribute informa ao compiladores que a enumeração deve ser tratada como um campo de bits que permite operações bit a bit na enumeração.
Se apenas um valor de uma enumeração pode ser especificado ao mesmo tempo, o nome da enumeração deve ser uma palavra singular. Por exemplo, uma enumeração que define os dias da semana pode servir para uso em um aplicativo onde você pode especificar vários dias. Essa enumeração deve ter o FlagsAttribute e podem ser denominados 'Dias'. Uma enumeração semelhante que permite que um único dia seja especificado não tem o atributo e poderia ser chamado de 'Dia'.
Convenções de nomenclatura fornecem um aspecto familiar a bibliotecas que se destinam ao uso com a common language runtime. Isso reduz o tempo que é necessário para aprender 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.
Como corrigir violações
Verifique o nome da enumeração de uma palavra singular ou adicionar o FlagsAttribute.
Quando suprimir avisos
É seguro suprimir um aviso da regra, se o nome terminar em uma palavra singular.
Regras relacionadas
CA1714: Sinalizadores enums devem ter nomes plural
CA1027: Marcar enums com FlagsAttribute
CA2217: Não marque enums com FlagsAttribute