SuppressMessageAttribute Classe

Definizione

Elimina la segnalazione di una violazione specifica della regola di analisi del codice, consentendo più eliminazioni su un singolo artefatto di codice. Non si applica alla diagnostica del compilatore.

public ref class SuppressMessageAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=false)]
[System.Diagnostics.Conditional("CODE_ANALYSIS")]
public sealed class SuppressMessageAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=false)>]
[<System.Diagnostics.Conditional("CODE_ANALYSIS")>]
type SuppressMessageAttribute = class
    inherit Attribute
Public NotInheritable Class SuppressMessageAttribute
Inherits Attribute
Ereditarietà
SuppressMessageAttribute
Attributi

Esempio

Nell'esempio di codice seguente viene illustrato l'uso dell'attributo SuppressMessageAttribute per eliminare i messaggi di avviso delle prestazioni.

#define CODE_ANALYSIS
using System;
using System.Diagnostics.CodeAnalysis;

namespace CodeAnalysisSample
{
    class Library
    {
        [SuppressMessage("Microsoft.Performance", "CA1801:ReviewUnusedParameters", MessageId = "isChecked")]
        [SuppressMessage("Microsoft.Performance", "CA1804:RemoveUnusedLocals", MessageId = "fileIdentifier")]
        static void FileNode(string name, bool isChecked)
        {
            string fileIdentifier = name;
            string fileName = name;
            string version = String.Empty;
        }
    }
}
#Const CODE_ANALYSIS = True
Imports System.Diagnostics.CodeAnalysis



Class Library
    
    <SuppressMessage("Microsoft.Performance", "CA1801:ReviewUnusedParameters", MessageId:="isChecked"), _
     SuppressMessage("Microsoft.Performance", "CA1804:RemoveUnusedLocals", MessageId:="fileIdentifier")> _
    Shared Sub FileNode(ByVal name As String, ByVal isChecked As Boolean)
        Dim fileIdentifier As String = name
        Dim fileName As String = name
        Dim version As String = String.Empty

    End Sub
End Class

Commenti

Questo attributo può essere applicato a qualsiasi elemento dell'applicazione. Per un elenco completo delle violazioni che possono essere eliminate, vedere Regole di qualità del codice.

Annotazioni

Viene ConditionalAttribute applicato a questa classe, specificando il simbolo di pre-elaborazione "CODE_ANALYSIS" come simbolo condizionale che determina se la chiamata all'attributo è inclusa o omessa. Se il simbolo è definito, viene inclusa la chiamata all'attributo; in caso contrario, la chiamata viene omessa.

Quando si fa clic con il pulsante destro del mouse su un avviso di analisi del codice in Visual Studio e scegliere Suppress <rule-ID>> in File di eliminazione o Suppress <rule-ID>> in Source (attribute), un attributo SuppressMessage viene aggiunto al file di eliminazione globale o al file di codice sorgente. Per altre informazioni sull'attributo SuppressMessage e sul relativo uso in Visual Studio, vedere Suppress code analysis violations.

Costruttori

Nome Descrizione
SuppressMessageAttribute(String, String)

Inizializza una nuova istanza della SuppressMessageAttribute classe , specificando la categoria dello strumento di analisi del codice e l'identificatore per una regola di analisi.

Proprietà

Nome Descrizione
Category

Ottiene la categoria che identifica la classificazione dell'attributo.

CheckId

Ottiene l'identificatore della regola dello strumento di analisi del codice da eliminare.

Justification

Ottiene o imposta la giustificazione per eliminare il messaggio di analisi del codice.

MessageId

Ottiene o imposta i criteri di esclusione espansi.

Scope

Ottiene o imposta l'ambito del codice pertinente per l'attributo .

Target

Ottiene o imposta un percorso completo che rappresenta la destinazione di analisi del codice.

TypeId

Se implementato in una classe derivata, ottiene un identificatore univoco per questo Attribute.

(Ereditato da Attribute)

Metodi

Nome Descrizione
Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()

Restituisce il codice hash per questa istanza.

(Ereditato da Attribute)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()

Quando sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)

Quando sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Esegue il mapping di un set di nomi a un set corrispondente di identificatori dispatch.

(Ereditato da Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo per un oggetto, che può essere utilizzato per ottenere le informazioni sul tipo per un'interfaccia.

(Ereditato da Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera il numero di interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

(Ereditato da Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso alle proprietà e ai metodi esposti da un oggetto .

(Ereditato da Attribute)

Si applica a