Auf Englisch lesen

Freigeben über


Compilerfehler CS0415

Das IndexerName-Attribut ist nur für einen Indexer gültig, bei dem es sich nicht um eine explizite Schnittstellenmemberdeklaration handelt.

Dieser Fehler tritt auf, wenn Sie ein IndexerName-Attribut für einen Indexer verwenden, der eine explizite Implementierung einer Schnittstelle darstellt. Dieser Fehler kann vermieden werden, indem der Schnittstellenname aus der Deklaration des Indexers entfernt wird, falls das möglich ist. Weitere Informationen finden Sie bei der IndexerNameAttribute-Klasse.

Im folgenden Beispiel wird CS0415 generiert:

// CS0415.cs  
using System;  
using System.Runtime.CompilerServices;  
  
public interface IA  
{  
    int this[int index]  
    {  
        get;  
        set;  
    }  
}  
  
public class A : IA  
{  
    [IndexerName("Item")]  // CS0415  
    int IA.this[int index]  
    // Try this line instead:  
    // public int this[int index]  
    {  
        get { return 0; }  
        set { }  
    }  
  
    static void Main()  
    {  
    }  
}