2013-02-14 15 views
5

Ho questi enumerazioni:Perché Resharper pensa che queste enumerazioni non vengano mai utilizzate?

private enum FontSizeType 
    { 
     XSmall, //9 
     Small, //12 
     Medium, //18 
     Large, //24 
     XLarge, //36 
     XXLarge //47 
    } 

    private enum AlignOptions 
    { 
     Left, 
     Center, 
     Right 
    } 

    private enum ValueType 
    { 
     Text, 
     Barcode 
    } 

e ispezione di ReSharper mi racconta di tutti loro che "membro Enum 'XSmall' [etc.] non viene mai usato"

Eppure io li sto usando nella mia combo caselle, così:

comboBoxType1.DataSource = Enum.GetNames(typeof(ValueType)); 

... quindi perché Resharper è stato ingannato? O è?

+2

ReSharper non "vede" un utilizzo diretto di 'FontSizeType.XSmall' (ecc ...), come si sta associazione dati del _whole_ enum. – Oded

risposta

6

ReSharper non rileva gli usi impliciti. Puoi usare [Usato implicitamente] per dirgli che il tuo membro del tipo è usato in modo implicito, e quindi dovrebbe smetterla di lamentarti.

Per utilizzare UsedImplicitlyAttribute nel codice, è necessario includere un riferimento a JetBrains.Annotations.dll o includere alcuni codici sorgente copiati nel progetto, vedere http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Annotations_in_Source_Code.html per i dettagli.

È necessario aggiungere [Utilizzato in modo implicito] su ciascun valore enum.

+0

Cercando questo: [UsedImplicitly] enum ValueType privato { testo, codici a barre } ... ottengo, "Il tipo o dello spazio dei nomi il nome 'UsedImplicitlyAttribute' non è stato trovato (che le manca una direttiva using o un riferimento all'assembly?) " –

+0

@ClayShannon si prega di consultare la risposta aggiornata. –

+0

Grazie, ma piuttosto che oscurare la mia fonte in questo modo, mi limiterò a "convivere con" il risvolto del dito di Resharper in questo caso. –

2

Si può anche disabilitare le lamentele se stesso utilizzando questa direttiva: [SuppressMessage("ReSharper", "UnusedMember.Global")] public enum ComplianceStatus { Notcompliant, Unknown, Warning, Compliant, Pendingrestart, Pendinglogoff }

Problemi correlati