SuppressMessageAttribute Classe

Definição

Suprime o relatório de uma violação específica de uma regra de análise de código, permitindo múltiplas supressões sobre um único artefacto de código. Não se aplica ao diagnóstico do compilador.

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
Herança
SuppressMessageAttribute
Atributos

Exemplos

O exemplo de código seguinte mostra a utilização do SuppressMessageAttribute atributo para suprimir mensagens de aviso de desempenho.

#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

Observações

Este atributo pode ser aplicado a qualquer elemento de aplicação. Para uma lista completa das violações que podem ser suprimidas, veja Regras de qualidade do Código.

Note

O ConditionalAttribute é aplicado a esta classe, especificando o símbolo de pré-processamento "CODE_ANALYSIS" como símbolo condicional que determina se a chamada de atributo está incluída ou omitida. Se o símbolo estiver definido, a chamada de atributo é incluída; caso contrário, a chamada é omitida.

Quando clica com o botão direito num aviso de análise de código em Visual Studio e escolhe Suprime <rule-ID>> em Suppression File ou Suppress <rule-ID>> em Source (atributo), um atributo SuppressMessage é adicionado quer ao ficheiro global de supressões, quer ao ficheiro de código-fonte. Para mais informações sobre o atributo SuppressMessage e a sua utilização em Visual Studio, consulte Suppress code analysis violations.

Construtores

Name Description
SuppressMessageAttribute(String, String)

Inicializa uma nova instância da SuppressMessageAttribute classe, especificando a categoria da ferramenta de análise de código e o identificador para uma regra de análise.

Propriedades

Name Description
Category

Obtém a categoria que identifica a classificação do atributo.

CheckId

Obtém a regra do identificador da ferramenta de análise de código a suprimir.

Justification

Recebe ou define a justificação para suprimir a mensagem de análise de código.

MessageId

Obtém ou define os critérios de exclusão alargados.

Scope

Obtém ou define o âmbito do código relevante para o atributo.

Target

Obtém ou define um caminho totalmente qualificado que representa o alvo de análise de código.

TypeId

Quando implementado numa classe derivada, obtém um identificador único para esta Attribute.

(Herdado de Attribute)

Métodos

Name Description
Equals(Object)

Devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Devolve o código de hash para esta instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Implementações de Interface Explícita

Name Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a