Lire en anglais

Partager via


Erreur du compilateur CS0415

L’attribut 'IndexerName' est valide uniquement sur un indexeur qui n’est pas une déclaration de membre d’interface explicite

Cette erreur se produit si vous utilisez un attribut IndexerName sur un indexeur correspondant à une 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()  
    {  
    }  
}