Compartilhar via


Não prefixo valores de enum com nome de tipo

TypeName

DoNotPrefixEnumValuesWithTypeName

CheckId

CA1712

Category (Categoria)

Microsoft.Naming

Quebrando alterar

Quebrando

Causa

Uma enumeração contém um membro cujo nome começa com o nome do tipo da enumeração.

Descrição da regra

Nomes de membros de enumeração não são prefixados com o nome do tipo porque as informações sobre o tipo deve ser fornecidos pelas ferramentas de desenvolvimento.

Convenções de nomenclatura fornecem uma aparência comum para bibliotecas de destino o common linguagem tempo de execução.Isso reduz o time necessário para aprender uma nova biblioteca de software e aumenta a confiança do cliente que a biblioteca foi desenvolvida por uma pessoa com experiência em desenvolvimento de código gerenciado.

Como corrigir violações

Para corrigir uma violação dessa regra, remova o prefixo do nome do tipo do membro de enumeração.

Quando suprimir avisos

Não suprimir um aviso da regra.

Exemplo

O exemplo a seguir mostra uma enumeração incorretamente nomeada seguida a versão corrigida.

Imports System

Namespace NamingLibrary

   Enum DigitalImageMode

      DigitalImageModeBitmap = 0
      DigitalImageModeGrayscale = 1
      DigitalImageModeIndexed = 2
      DigitalImageModeRGB = 3

   End Enum

   Enum DigitalImageMode2

      Bitmap = 0
      Grayscale = 1
      Indexed = 2
      RGB = 3

   End Enum

End Namespace
using System;

namespace NamingLibrary
{
   public enum DigitalImageMode
   {
      DigitalImageModeBitmap = 0,
      DigitalImageModeGrayscale = 1,
      DigitalImageModeIndexed = 2,
      DigitalImageModeRGB = 3
   }

   public enum DigitalImageMode2
   {
      Bitmap = 0,
      Grayscale = 1,
      Indexed = 2,
      RGB = 3
   }
}
using namespace System;

namespace NamingLibrary
{
   public enum class DigitalImageMode
   {
      DigitalImageModeBitmap = 0,
      DigitalImageModeGrayscale = 1,
      DigitalImageModeIndexed = 2,
      DigitalImageModeRGB = 3
   };

   public enum class DigitalImageMode2
   {
      Bitmap = 0,
      Grayscale = 1,
      Indexed = 2,
      RGB = 3
   };
}

Regras relacionadas

Identificadores não devem ter o sufixo incorreto

Marcar enums com FlagsAttribute

Não marque enums com FlagsAttribute

Consulte também

Referência

System.Enum