Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Błąd kompilatora CS0646

Nie można określić atrybutu DefaultMember w typie zawierającym indeksator

Jeśli klasa lub inny typ określa System.EmocjeJonów. DefaultMemberAttribute, nie może zawierać indeksatora. Aby uzyskać więcej informacji, zobacz Właściwości.

Poniższy przykład generuje CS0646:

// CS0646.cs  
// compile with: /target:library  
[System.Reflection.DefaultMemberAttribute("x")]   // CS0646  
class MyClass  
{  
   public int this[int index]   // an indexer  
   {  
      get  
      {  
         return 0;  
      }  
   }  
  
   public int x = 0;  
}  
  
// OK  
[System.Reflection.DefaultMemberAttribute("x")]  
class MyClass2  
{  
   public int prop  
   {  
      get  
      {  
         return 0;  
      }  
   }  
  
   public int x = 0;  
}  
  
class MyClass3  
{  
   public int this[int index]   // an indexer  
   {  
      get  
      {  
         return 0;  
      }  
   }  
  
   public int x = 0;  
}