Compiler Error CS1546

Die Eigenschaft, der Indexer oder das Ereignis "Eigenschaft" wird von der Sprache nicht unterstützt. Rufen Sie die "Accessor"-Accessormethode direkt auf.

Der Code nutzt ein Objekt mit einer indizierten Standardeigenschaft und hat versucht, die indizierte Syntax zu verwenden. Zur Behebung dieses Fehlers rufen Sie die Accessor-Methode der Eigenschaft auf. Weitere Informationen über Indexer und Eigenschaften finden Sie unter Indexer.

Im folgenden Beispiel wird CS1546 generiert.

Beispiel

Dieses Codebeispiel besteht aus einer CPP-Datei, die in eine DLL kompiliert wird, sowie aus einer CS-Datei, die diese DLL verwendet. Der folgende Code ist für die DLL-Datei bestimmt und definiert eine Eigenschaft, auf die der Code in der CS-Datei zugreift.

// 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;  
        }  
    }  
};  

Beispiel

Dies ist die C#-Datei.

// 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);  
    }  
}