컴파일러 오류 CS1546

업데이트: 2007년 11월

오류 메시지

'property' 속성, 인덱서 또는 이벤트는 이 언어에서 지원되지 않습니다. 'accessor' 접근자 메서드를 직접 호출해 보십시오.
Property, indexer, or event 'property' is not supported by the language; try directly calling accessor method 'accessor'

인덱싱된 기본 속성이 있는 개체를 사용하고 있는 코드에서 인덱싱된 구문을 사용하려고 했습니다. 이 오류를 해결하려면 속성의 접근자 메서드를 호출하십시오. 인덱서 및 속성에 대한 자세한 내용은 인덱서(C# 프로그래밍 가이드)를 참조하십시오.

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

예제

이 코드 샘플은 .dll로 컴파일되는 .cpp 파일 하나와 이 .dll을 사용하는 .cs 파일 하나로 이루어집니다. .dll 파일에 대한 아래의 코드에서는 .cs 파일의 코드를 통해 액세스하게 될 속성을 정의합니다.

// CPP1546.cpp
// compile with: /clr /LD
using namespace System;
public ref class MCPP
{
public:
    property int Prop [int,int]
    {
        int get( int i, int b )
        {
            return i;
        }
    }
};

다음은 C# 파일입니다.

// CS1546.cs
// compile with: /r:CPP1546.dll 
using System;
public class Test
{
    public static void Main()
    {
        int i = 0;
        MCPP mcpp = new MCPP();
        i = mcpp.Prop(1,1); // CS1546
        // Try the following line instead:
        // i = mcpp.get_Prop(1,1);
    }
}