다음을 통해 공유


전역 'SuppressMessageAttribute'(IDE0077)에서 레거시 형식 대상을 피하십시오.

재산
규칙 ID IDE0077
제목 전역 SuppressMessageAttribute에서 레거시 형식 사용 방지
카테고리 CodeQuality
하위 범주 기타 규칙
적용 가능한 언어 C# 및 Visual Basic

개요

이 규칙은 레거시 FxCop 대상 문자열 형식을 사용하여 Target 지정하는 전역 SuppressMessageAttributes 플래그를 지정합니다. 레거시 형식 Target 사용하는 것은 성능 문제가 있는 것으로 알려져 있으며 피해야 합니다. 자세한 내용은 dotnet/roslyn 문제 44362참조하세요.

Target 권장되는 형식은 설명서 ID 형식입니다. 설명서 ID에 대한 자세한 내용은 설명서 ID 형식참조하세요.

Visual Studio 2019는 특성의 Target 권장 형식으로 자동으로 변경하는 코드 수정을 제공합니다.

옵션

이 규칙에는 연결된 코드 스타일 옵션이 없습니다.

// IDE0077: Legacy format target 'N.C.#F'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "N.C.#F")]

// Fixed code
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F")]

namespace N
{
    class C
    {
        public int F;
    }
}

경고 표시 안 함

단일 위반만 표시하지 않으려면 소스 파일에 전처리기 지시문을 추가하여 규칙을 사용하지 않도록 설정한 다음 다시 사용하도록 설정합니다.

#pragma warning disable IDE0077
// The code that's violating the rule is on this line.
#pragma warning restore IDE0077

파일, 폴더 또는 프로젝트에 대한 규칙을 사용하지 않도록 설정하려면 해당 심각도를 구성 파일none 설정합니다.

[*.{cs,vb}]
dotnet_diagnostic.IDE0077.severity = none

이 전체 규칙 범주를 사용하지 않도록 설정하려면 구성 파일범주의 심각도를 none 설정합니다.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none

자세한 내용은 코드 분석 경고표시하지 않는 방법을 참조하세요.

참고 문서