Partager via


Erreur du compilateur CS0415

Mise à jour : novembre 2007

Message d'erreur

L'attribut 'IndexerName' est valide uniquement sur un indexeur qui n'est pas une déclaration de membre d'interface explicite
The 'IndexerName' attribute is valid only on an indexer that is not an explicit interface member declaration

Cette erreur se produit si vous utilisez un attribut IndexerName sur un indexeur correspondant à l'implémentation explicite d'une interface. Cette erreur peut être évitée grâce à la suppression du nom d'interface de la déclaration de l'indexeur, si possible. Pour plus d'informations, consultez IndexerNameAttribute, classe.

L'exemple suivant génère l'erreur 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()
    {
    }
}