SuppressMessageAttribute Класс

Определение

Подавляет отчеты о нарушении определенного правила анализа кода, что позволяет выполнять несколько подавлений для одного артефакта кода. Не применяется к диагностике компилятора.

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
Наследование
SuppressMessageAttribute
Атрибуты

Примеры

В следующем примере кода показано использование атрибута для подавления SuppressMessageAttribute сообщений предупреждения о производительности.

#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

Комментарии

Этот атрибут можно применить к любому элементу приложения. Полный список нарушений, которые можно отключить, см. в правилах качества кода.

Note

Применяется ConditionalAttribute к этому классу, указывая символ предварительной обработки "CODE_ANALYSIS" в качестве условного символа, который определяет, включен или опущен вызов атрибута. При определении символа вызов атрибута включается; в противном случае вызов опущен.

Щелкнув правой кнопкой мыши предупреждение анализа кода в Visual Studio и выбрав Suppress <rule-ID>> в файле подавления или Suppress rule-ID в source (attribute), SuppressMessage атрибут добавляется в глобальный файл подавления или в файл исходного кода. Дополнительные сведения о атрибуте SuppressMessage и его использовании в Visual Studio см. в статье Suppress- нарушения анализа кода.

Конструкторы

Имя Описание
SuppressMessageAttribute(String, String)

Инициализирует новый экземпляр SuppressMessageAttribute класса, указывая категорию средства анализа кода и идентификатор правила анализа.

Свойства

Имя Описание
Category

Возвращает категорию, определяющую классификацию атрибута.

CheckId

Возвращает идентификатор правила средства анализа кода, которое необходимо отключить.

Justification

Возвращает или задает обоснование подавления сообщения анализа кода.

MessageId

Возвращает или задает развернутые критерии исключения.

Scope

Возвращает или задает область кода, соответствующего атрибуту.

Target

Возвращает или задает полный путь, представляющий целевой объект анализа кода.

TypeId

При реализации в производном классе получает уникальный идентификатор для этого Attribute.

(Унаследовано от Attribute)

Методы

Имя Описание
Equals(Object)

Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код для этого экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к свойствам и методам, предоставляемым объектом.

(Унаследовано от Attribute)

Применяется к