다음을 통해 공유


컴파일러 오류 CS1928

업데이트: 2007년 11월

오류 메시지

'Type'에 'method'에 대한 정의가 없으며 가장 적합한 확장 메서드 오버로드 'method'에 잘못된 인수가 있습니다.
'Type' does not contain a definition for 'method' and the best extension method overload 'method' has some invalid arguments.

이 오류는 컴파일러가 호출된 메서드 이름을 사용하여 클래스 멤버를 찾을 수 없는 경우 발생합니다. 해당 이름을 사용하여 확장 메서드를 찾을 수는 있지만 메서드 호출과 함께 전달한 형식과 일치하는 시그니처를 사용하여 확장 메서드를 찾을 수는 없습니다.

이 오류를 해결하려면

  • 기존 확장 메서드 또는 클래스 메서드와 일치하는 형식을 전달합니다.

예제

다음 코드에서는 CS1928 오류가 발생하는 경우를 보여 줍니다.

// cs1928.cs
class Test
{
    static void Main()
    {
        Test t = new Test();
        t.M("hi"); // CS1928
    }
}
static class Ext
{
    public static void M(this Test t, int i)
    {
    }
}

이 오류는 종종 "CS1503: 'n' 인수: 'typeA'에서 'typeB'(으)로 변환할 수 없습니다."와 함께 발생합니다.

참고 항목

참조

확장 메서드(C# 프로그래밍 가이드)