英語で読む

次の方法で共有


コンパイラ エラー CS0415

'IndexerName' 属性は、明示的なインターフェイス メンバー宣言ではないインデクサー上でのみ有効です。

このエラーは、インターフェイスの明示的な実装であるインデクサーで IndexerName 属性を使用する場合に発生します。 このエラーを回避するには、可能であれば、インデクサーの宣言からインターフェイスの名前を削除します。 詳細については、「 IndexerNameAttribute クラス」を参照してください。

次の例では CS0415 が生成されます。

// 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()  
    {  
    }  
}