Errore del compilatore CS0011

Aggiornamento: novembre 2007

Messaggio di errore

Impossibile risolvere la classe base o l'interfaccia 'classe' nell'assembly 'assembly' a cui fa riferimento il tipo 'tipo'.
The base class or interface 'class' in assembly 'assembly' referenced by type 'type' could not be resolved

Una classe importata da un file tramite /reference deriva da una classe o implementa un'interfaccia che non è stata trovata. Questo errore può venire visualizzato se una DLL obbligatoria non è inclusa anche nella compilazione tramite /reference.

Per ulteriori informazioni, vedere Finestra di dialogo Aggiungi riferimento e /reference (importazione di metadati) (opzioni del compilatore C#).

Esempio

// CS0011_1.cs
// compile with: /target:library

public class Outer 
{
   public class B { }
}

Nel secondo file si crea una DLL che definisce una classe C derivante dalla classe B generata nel passaggio precedente.

// CS0011_2.cs
// compile with: /target:library /reference:CS0011_1.dll
// post-build command: del /f CS0011_1.dll
public class C : Outer.B {}

Nel terzo file viene sostituita la DLL creata nel primo passaggio e si omette la definizione della classe B interna.

// CS0011_3.cs
// compile with: /target:library /out:cs0011_1.dll
public class Outer {}

Nell'ultimo file si crea un riferimento alla classe C definita nel secondo passaggio. Quest'ultima deriva dalla classe B, che non è più disponibile.

Il seguente codice di esempio genera l'errore CS0011:

// CS0011_4.cs
// compile with: /reference:CS0011_1.dll /reference:CS0011_2.dll
// CS0011 expected

class M
{
   public static void Main()
   {
      C c = new C();
   }
}

Vedere anche

Riferimenti

Finestra di dialogo Aggiungi riferimento

/reference (importazione di metadati) (opzioni del compilatore C#)