CA1712: Nie należy poprzedzać wartości enum nazwą typu
TypeName |
DoNotPrefixEnumValuesWithTypeName |
CheckId |
CA1712 |
Kategoria |
Microsoft.Naming |
Złamanie zmiany |
Złamanie |
Przyczyna
Wyliczenie zawiera członka, którego nazwa zaczyna się od nazwy typ wyliczenia.
Opis reguły
Nazwiska członków wyliczenia nie są poprzedzona nazwą typu, ponieważ oczekuje wpisz informacje dostarczane przez narzędzia programistyczne.
Konwencje nazewnictwa przewidują wspólne wygląd biblioteki docelowej aparatu plików wykonywalnych języka wspólnego.Zmniejsza to czas, który jest wymagany dla nauczyć się nowa biblioteka oprogramowania i zwiększa zaufanie klientów, że biblioteka została opracowana przez osobę, która ma doświadczenie w rozwijającym się kod zarządzany.
Jak naprawić naruszenia
Aby naprawić naruszenie tej zasady, należy usunąć prefiks nazwy typu z elementu wyliczenia.
Kiedy do pomijania ostrzeżenia
Nie pomijaj ostrzeżenie od tej reguły.
Przykład
Poniższy przykład pokazuje niepoprawnie nazwani następuje poprawionej wersji.
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
};
}
Zasady pokrewne
CA1711: Identyfikatory powinny mieć poprawny przyrostek
CA1027: Oznaczaj wyliczenia za pomocą FlagsAttribute
CA2217: Nie oznaczaj wyliczeń za pomocą FlagsAttribute