컴파일러 오류 CS0071

업데이트: 2007년 11월

오류 메시지

이벤트의 명시적 인터페이스를 구현할 때에는 이벤트 접근자 구문을 사용해야 합니다.
An explicit interface implementation of an event must use event accessor syntax

인터페이스에 선언된 이벤트를 명시적으로 구현할 때에는 일반적으로 컴파일러에서 제공되는 add 및 remove 이벤트 접근자를 직접 제공해야 합니다. 접근자 코드에서는 이 항목의 뒷부분에 표시된 것과 같이 인터페이스 이벤트를 클래스의 다른 이벤트에 연결하거나 해당 이벤트의 대리자 형식에 연결할 수 있습니다. 자세한 내용은 방법: 인터페이스 이벤트 구현(C# 프로그래밍 가이드)을 참조하십시오.

예제

다음 샘플에서는 CS0071 오류가 발생하는 경우를 보여 줍니다.

// CS0071.cs
public delegate void MyEvent(object sender);

interface ITest
{
    event MyEvent Clicked;
}

class Test : Itest
{
    event MyEvent ITest.Clicked;  // CS0071

    // try the following code instead
/*
private MyEvent clicked;

    event MyEvent Itest.Clicked
    {
        add
        {
            clicked += value;
        }
        remove
        {
            clicked -= value;
        }
    }
*/
    public static void Main() { }
}