CA1712: Ange inte prefixvärden med typnamn
Property | Värde |
---|---|
Regel-ID | CA1712 |
Title | Prefixet uppräkningsvärden med typnamn |
Kategori | Namngivning |
Korrigeringen är icke-bakåtkompatibel | Brott |
Aktiverad som standard i .NET 9 | Nej |
Orsak
En uppräkning innehåller en medlem vars namn börjar med uppräkningstypens typnamn.
Regelbeskrivning
Namn på uppräkningsmedlemmar är inte prefix med typnamnet eftersom typinformation förväntas tillhandahållas av utvecklingsverktyg.
Namngivningskonventioner ger ett vanligt utseende för bibliotek som riktar sig till den gemensamma språkkörningen. Detta minskar den tid som krävs för att lära sig ett nytt programvarubibliotek och ökar kundernas förtroende för att biblioteket har utvecklats av någon som har expertis inom att utveckla hanterad kod.
Så här åtgärdar du överträdelser
Om du vill åtgärda ett brott mot den här regeln tar du bort typnamnsprefixet från uppräkningsmedlemmen.
När du ska ignorera varningar
Ignorera inte en varning från den här regeln.
Exempel
I följande exempel visas en felaktigt namngiven uppräkning följt av den korrigerade versionen.
public enum DigitalImageMode
{
DigitalImageModeBitmap = 0,
DigitalImageModeGrayscale = 1,
DigitalImageModeIndexed = 2,
DigitalImageModeRGB = 3
}
public enum DigitalImageMode2
{
Bitmap = 0,
Grayscale = 1,
Indexed = 2,
RGB = 3
}
Imports System
Namespace ca1712
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
Relaterade regler
- CA1711: Identifierare bör inte ha fel suffix
- CA1027: Markera uppräkningar med FlagsAttribute
- CA2217: Markera inte uppräkningar med FlagsAttribute
Konfigurera kod för analys
Använd följande alternativ för att konfigurera vilka delar av kodbasen som regeln ska köras på.
Du kan konfigurera det här alternativet för bara den här regeln, för alla regler som den gäller för eller för alla regler i den här kategorin (namngivning) som den gäller för. Mer information finns i Konfigurationsalternativ för kodkvalitetsregel.
Prefixutlösare för uppräkningsvärden
Du kan konfigurera antalet uppräkningsvärden som krävs för att utlösa regeln. Om du till exempel vill ange att regeln utlöses om ett eller flera uppräkningsvärden börjar med namnet på uppräkningstypen lägger du till följande nyckel/värde-par i en .editorconfig-fil i projektet:
dotnet_code_quality.CA1712.enum_values_prefix_trigger = AnyEnumValue
Exempel:
Alternativvärde | Sammanfattning |
---|---|
dotnet_code_quality.CA1712.enum_values_prefix_trigger = AnyEnumValue |
Regeln utlöses om något av uppräkningsvärdena börjar med uppräkningstypens namn. |
dotnet_code_quality.CA1712.enum_values_prefix_trigger = AllEnumValues |
Regeln utlöses om alla uppräkningsvärden börjar med uppräkningstypens namn. |
dotnet_code_quality.CA1712.enum_values_prefix_trigger = Heuristic |
Regeln utlöses med standard-heuristiken, d.v.s. när minst 75 % av uppräkningsvärdena börjar med namnet på uppräkningstypen. |