Condividi tramite


Contrassegna i membri come statici

Aggiornamento: novembre 2007

TypeName

MarkMembersAsStatic

CheckId

CA1822

Categoria

Microsoft.Performance

Breaking Change

Non sostanziale - Se il membro non è visibile all'esterno dell'assembly, indipendentemente dalla modifica apportata. Non sostanziale - Se si imposta semplicemente il membro su un membro di istanza con la parola chiave this.

Sostanziale - Se il membro viene configurato da membro di istanza a membro statico ed è visibile all'esterno dell'assembly.

Causa

Un membro che non accede ai dati sull'istanza non è contrassegnato come statico (Shared in Visual Basic).

Descrizione della regola

I membri che non accedono ai dati di istanza o chiamano metodi di istanza possono essere contrassegnati come statici (Shared in Visual Basic). Il compilatore invierà quindi siti di chiamata non virtuali a questi membri in modo da evitare un controllo in fase di esecuzione per ogni chiamata che accerti che il puntatore dell'oggetto corrente sia diverso da null. Si potrà così ottenere un sensibile miglioramento delle prestazioni per codici sensibili alle prestazioni. In alcuni casi, l'accesso non riuscito all'istanza dell'oggetto corrente rappresenta un problema di correzione.

Correzione di violazioni

Contrassegnare il metodo come statico (o Shared in VB) o utilizzare 'this'/'Me' nel corpo del metodo, se appropriato.

Esclusione di avvisi

L'esclusione di un avviso da questa regola è sicura per il codice fornito in precedenza per il quale la correzione rappresenterebbe una modifica sostanziale.

Regole correlate

Evitare il codice privato non chiamato

Evitare classi interne prive di istanze

Rimuovere locali non utilizzati