CA1712: Geef geen enumwaarden een voorvoegsel dat de typenaam bevat

Eigenschap Waarde
Regel-id CA1712
Titel Voeg geen typenaam toe als voorvoegsel van enumeratiewaarden.
Categorie Naamgeving
Fix kan brekend of niet-brekend zijn Onderbreking
Standaard ingeschakeld in .NET 10 Nee
Toepasselijke talen C# en Visual Basic

Oorzaak

Een opsomming bevat een lid waarvan de naam begint met de typenaam van de opsomming.

Beschrijving van regel

Namen van opsommingsleden worden niet voorafgegaan door de naam van het type, omdat typegegevens naar verwachting worden verstrekt door ontwikkelhulpprogramma's.

Naamconventies zorgen voor een eenduidige uitstraling voor bibliotheken die gericht zijn op de Common Language Runtime (CLR). Dit verkort de tijd die nodig is voor het leren van een nieuwe softwarebibliotheek en verhoogt het vertrouwen van de klant dat de bibliotheek is ontwikkeld door iemand die ervaring heeft met het ontwikkelen van beheerde code.

Hoe schendingen op te lossen

Als u een schending van deze regel wilt oplossen, verwijdert u het voorvoegsel van het typenaam uit het opsommingslid.

Wanneer waarschuwingen onderdrukken

Een waarschuwing van deze regel niet onderdrukken.

Voorbeeld

In het volgende voorbeeld ziet u een onjuist benoemde opsomming, gevolgd door de gecorrigeerde versie.

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

Code configureren om te analyseren

Gebruik de volgende optie om te configureren op welke onderdelen van uw codebase deze regel moet worden uitgevoerd.

U kunt deze optie configureren voor alleen deze regel, voor alle regels waarop deze van toepassing is, of voor alle regels in deze categorie (naamgeving) waarop deze van toepassing is. Zie de configuratieopties voor de codekwaliteitsregel voor meer informatie.

Trigger voor voorvoegsel van enum-waarden

U kunt het aantal opsommingswaarden configureren dat is vereist om de regel te activeren. Als u bijvoorbeeld wilt opgeven dat de regel wordt geactiveerd als een of meer enum-waarden beginnen met de naam van het enum-type, voegt u het volgende sleutel-waardepaar toe aan een .editorconfig-bestand in uw project:

dotnet_code_quality.CA1712.enum_values_prefix_trigger = AnyEnumValue

Voorbeelden:

Optiewaarde Samenvatting
dotnet_code_quality.CA1712.enum_values_prefix_trigger = AnyEnumValue De regel wordt geactiveerd als een van de enum-waarden begint met de naam van het enum-type.
dotnet_code_quality.CA1712.enum_values_prefix_trigger = AllEnumValues De regel wordt geactiveerd als alle enum-waarden beginnen met de naam van het enum-type.
dotnet_code_quality.CA1712.enum_values_prefix_trigger = Heuristic De regel wordt geactiveerd met behulp van de standaard heuristiek, dat wil gezegd, wanneer ten minste 75% van de enum-waarden beginnen met de naam van het enum-type.

Zie ook