Share via


CA1712: Ange inte prefixvärden med typnamn

Property Värde
Regel-ID CA1712
Rubrik Prefixet uppräkningsvärden med typnamn
Kategori Namngivning
Korrigeringen är icke-bakåtkompatibel Bryta
Aktiverad som standard i .NET 8 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

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.

Se även