CA1712: enum 値を型名のプレフィックスにしません

TypeName

DoNotPrefixEnumValuesWithTypeName

CheckId

CA1712

分類

Microsoft.Naming

互換性に影響する変更点

あり

原因

列挙型にメンバーが含まれ、そのメンバー名の先頭に列挙型名が付いています。

規則の説明

型の情報は開発ツールで表示されるため、列挙型のメンバー名には、型名のプレフィックスを付けません。

名前付け規則では、共通言語ランタイムをターゲットとするライブラリの統一的な名前の付け方が規定されています。これにより、新しいソフトウェア ライブラリを習得するまでの時間を短縮でき、マネージ コード開発の専門家によってライブラリが開発されたという信頼を顧客に与えることができます。

違反の修正方法

この規則違反を修正するには、列挙型のメンバーから型名のプレフィックスを削除します。

警告を抑制する状況

この規則による警告は抑制しないでください。

使用例

次の例に、不適切な名前の列挙型と、その修正例を示します。

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
   };
}

関連規則

CA1711: 識別子は、不適切なサフィックスを含むことはできません

CA1027: FlagsAttribute で列挙値をマークします

CA2217: enums を FlagsAttribute に設定しません

参照

関連項目

Enum