Dela via


Kompilatorfel CS1546

Egenskap, indexerare eller händelseegenskap stöds inte av språket. prova att anropa accessor-metoden "accessor" direkt

Koden använder ett objekt som har en standardindexerad egenskap och försöker använda den indexerade syntaxen. Lös det här felet genom att anropa egenskapens accessor-metod. Mer information om indexerare och egenskaper finns i Indexerare.

Följande exempel genererar CS1546.

Exempel 1

Det här kodexemplet består av en .cpp fil som kompileras till en .dll och en .cs fil som använder den .dll. Följande kod är för .dll-filen och definierar en egenskap som ska nås av koden i .cs-filen.

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

Exempel 2

Det här är C#-filen.

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