Ler em inglês

Partilhar via


Erro do compilador CS0011

A classe base ou interface 'classe' em assembly 'assembly' referenciada pelo tipo 'tipo' não pôde ser resolvida

Uma classe que foi importada de um arquivo com /reference, é derivada de uma classe ou implementa uma interface que não é encontrada. Isso pode ocorrer se uma DLL necessária não estiver também incluída na compilação com /reference.

Para obter mais informações, consulte Adicionar caixa de diálogo de referência e referências (opções do compilador C#).

Exemplos

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

O segundo arquivo cria uma DLL que define uma classe C que é derivada da classe B que foi criada no exemplo anterior.

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

O terceiro arquivo substitui a DLL criada pela primeira etapa e omite a definição da classe Binterna.

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

Finalmente, o quarto arquivo faz referência à classe C definida no segundo exemplo, que é derivada da classe B, e que agora está faltando.

O exemplo a seguir gera 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();  
   }  
}