SuppressMessageAttribute Clase

Definición

Suprime la generación de informes de una infracción de regla específica de análisis de código, lo que permite varias supresiones en un único artefacto de código. No se aplica a los diagnósticos del 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
Herencia
SuppressMessageAttribute
Atributos

Ejemplos

En el ejemplo de código siguiente se muestra el uso del SuppressMessageAttribute atributo para suprimir los mensajes de advertencia de rendimiento.

#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

Comentarios

Este atributo se puede aplicar a cualquier elemento de aplicación. Para obtener una lista completa de las infracciones que se pueden suprimir, consulte Reglas de calidad del código.

Nota

ConditionalAttribute se aplica a esta clase, especificando el símbolo de preprocesamiento "CODE_ANALYSIS" como símbolo condicional que determina si la llamada de atributo se incluye o se omite. Si se define el símbolo, se incluye la llamada de atributo; de lo contrario, se omite la llamada.

Al hacer clic con el botón derecho en una advertencia de análisis de código en Visual Studio y elegir Suprimir <identificador de>> regla en Archivo de supresión o Suprimir <id. de regla>> en origen (atributo), se agrega un atributo SuppressMessage al archivo de supresiones globales o al archivo de código fuente. Para obtener más información sobre el atributo SuppressMessage y su uso en Visual Studio, vea Suprimir infracciones de análisis de código.

Constructores

SuppressMessageAttribute(String, String)

Inicializa una nueva instancia de la clase SuppressMessageAttribute, especificando la categoría de la herramienta de análisis de código y el identificador de una regla de análisis.

Propiedades

Category

Obtiene la categoría que identifica la clasificación del atributo.

CheckId

Obtiene el identificador de la regla de la herramienta de análisis de código que se suprimirá.

Justification

Obtiene o establece la justificación para suprimir el mensaje de análisis de código.

MessageId

Obtiene o establece los criterios de exclusión ampliados.

Scope

Obtiene o establece el ámbito del código que es relevante para el atributo.

Target

Obtiene o establece una ruta de acceso completa que representa el destino de análisis de código.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

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

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

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

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a