Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Błąd kompilatora CS0011

Nie można rozpoznać klasy bazowej lub interfejsu "class" w zestawie "assembly", do których odwołuje się typ "type"

Klasa zaimportowana z pliku z /reference pochodzi z klasy lub implementuje interfejs, który nie został znaleziony. Taka sytuacja może wystąpić, jeśli wymagana biblioteka DLL nie jest również uwzględniona w kompilacji z /reference.

Aby uzyskać więcej informacji, zobacz Dodawanie okna dialogowego odwołania i odwołań (opcje kompilatora języka C#).

Przykłady

// CS0011_1.cs  
// compile with: /target:library  
  
public class Outer
{  
   public class B { }  
}  

Drugi plik tworzy bibliotekę DLL, która definiuje klasę C pochodzącą z klasy B utworzonej w poprzednim przykładzie.

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

Trzeci plik zastępuje bibliotekę DLL utworzoną w pierwszym kroku i pomija definicję klasy Bwewnętrznej .

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

Na koniec czwarty plik odwołuje się do klasy C zdefiniowanej w drugim przykładzie, która pochodzi z klasy B, i której teraz brakuje.

Poniższy przykład generuje plik 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();  
   }  
}