다음을 통해 공유


호출되지 않는 전용 코드를 사용하지 마십시오.

업데이트: 2007년 11월

TypeName

AvoidUncalledPrivateCode

CheckId

CA1811

범주

Microsoft.Performance

변경 수준

주요 변경 아님

원인

전용 또는 내부(어셈블리 수준) 멤버가 어셈블리에 이를 호출하는 호출자가 없고, 공용 언어 런타임에서도 이 멤버를 호출하지 않으며, 대리자에서도 이 멤버를 호출하지 않습니다. 이 규칙에서 다음 멤버는 확인하지 않습니다.

규칙 설명

이 규칙에서는 규칙 논리에서 현재 식별할 수 없는 진입점이 있을 경우 가양성(false positives)을 보고할 수 있습니다. 또한 컴파일러에서 호출되지 않는 코드를 어셈블리로 내보낼 수 있습니다.

위반 문제를 해결하는 방법

이 규칙 위반 문제를 해결하려면 호출되지 않는 코드를 제거하거나 이를 호출하는 코드를 추가합니다.

경고를 표시하지 않는 경우

이 규칙에서는 경고를 표시하지 않아도 안전합니다.

관련 규칙

인스턴스화되지 않은 내부 클래스를 사용하지 마십시오.

사용되지 않은 매개 변수를 검토하십시오.

사용되지 않는 로컬 항목을 제거하십시오.

예제

멤버를 전처리기 if# 영역에서 호출하는 경우 이 규칙은 가양성(false positive)을 보고하게 됩니다.

using System;

namespace SampleNamespace
{    
    class SampleClass    
    {        
        static void Main()
        {
        }

        public void NotifyByEMail(string to) 
        {
            // ...
        }

        public void AnotherMethod() 
        {
            #if !DEBUG
                NotifyByEMail("this.that@someplace.com");
            #endif
        }
    }
}