Errore del compilatore CS0106

Aggiornamento: novembre 2007

Messaggio di errore

Il modificatore 'modificatore' non è valido per questo elemento.
The modifier 'modifier' is not valid for this item

Un membro di classe o di interfaccia è stato contrassegnato con un modificatore di accesso non valido. Negli esempi seguenti sono descritti alcuni di questi modificatori non validi:

  • I modificatori static e public non sono consentiti nei metodi di interfaccia.

  • La parola chiave public non è consentita in una dichiarazione esplicita dell'interfaccia. In questo caso, rimuovere la parola chiave public dalla dichiarazione esplicita dell'interfaccia.

  • La parola chiave abstract non è consentita in una dichiarazione esplicita dell'interfaccia, perché un'implementazione esplicita di un'interfaccia non può essere sottoposta a override.

Nelle versioni precedenti di Visual Studio non è consentito utilizzare il modificatore static in una classe, ma le classi static possono iniziare con Microsoft Visual Studio 2005.

Per ulteriori informazioni, vedere Interfacce (Guida per programmatori C#)

Esempio

Il seguente codice di esempio genera l'errore CS0106:

// CS0106.cs
namespace MyNamespace
{
   interface I
   {
      void m();
      static public void f();   // CS0106
   }

   public class MyClass
   {
      public void I.m() {}   // CS0106
      public static void Main() {}
   }
}