Condividi tramite


CA1714: Le enumerazioni con Flags devono avere nomi plurali

TypeName

FlagsEnumsShouldHavePluralNames

CheckId

CA1714

Category

Microsoft.Naming

Breaking Change

Breaking

Causa

Un'enumerazione pubblica dispone dell'attributo System.FlagsAttribute e il nome non termina per "s".

Descrizione della regola

Ai tipi contrassegnati con FlagsAttribute sono assegnati nomi plurali perché tale attributo indica che è possibile specificare più valori. Ad esempio, un'enumerazione che definisce i giorni della settimana potrebbe essere destinata all'utilizzo in un'applicazione in cui è possibile specificare più giorni. Questa enumerazione dovrà contenere l'attributo FlagsAttribute e potrebbe essere denominata "Days". Un'enumerazione simile che consenta di specificare un solo giorno, non conterrà tale attributo e potrebbe essere denominata "Day".

Le convenzioni di denominazione forniscono un aspetto comune alle librerie che si avvalgono di Common Language Runtime. In questo modo si riduce la curva di apprendimento necessaria per le nuove librerie software e i clienti possono confidare nel fatto che la libreria è stata sviluppata da un esperto nello sviluppo di codice gestito.

Come correggere le violazioni

Cambiare il nome dell'enumerazione in una parola plurale o rimuovere l'attributo FlagsAttribute se non è consentito specificare più valori di enumerazione alla volta.

Esclusione di avvisi

L'esclusione di una violazione è sicura se il nome è una parola plurale, ma non termina per "s". Se, ad esempio, l'enumerazione di più giorni descritta in precedenza fosse denominata "DaysOfTheWeek", verrebbe violata la logica della regola, ma non lo scopo. Tali violazioni devono essere escluse.

Regole correlate

CA1027: Contrassegnare le enumerazioni con FlagsAttribute

CA2217: Non contrassegnare le enumerazioni con FlagsAttribute

Vedere anche

Riferimenti

System.FlagsAttribute

Concetti

Progettazione di enumerazioni