Ler em inglês

Partilhar via


Aviso do compilador (nível 1) CS1682

A referência ao tipo 'tipo' afirma que ele está aninhado dentro de 'tipo aninhado', mas não pôde ser encontrado

Este erro surge quando você importa referências que não concordam com outras referências ou com o código que você escreveu. Uma maneira comum de obter esse erro é escrever código que se refere a uma classe em metadados e, em seguida, você excluir essa classe ou modificar sua definição.

Exemplo 1

// CS1682.cs  
// compile with: /target:library /keyfile:mykey.snk  
public class A {  
   public class N1 {}  
}  

Exemplo 2

// CS1682_b.cs  
// compile with: /target:library /reference:CS1682.dll  
using System;  
public class Ref {  
  
   public static A A1() {  
      return new A();  
   }  
  
   public static A.N1 N1() {
      return new A.N1();  
   }  
}  

Exemplo 3

// CS1682_c.cs  
// compile with: /target:library /keyfile:mykey.snk /out:CS1682.dll  
public class A {  
   public void M1() {}  
}  

Exemplo 4

O exemplo a seguir gera CS1682.

// CS1682_d.cs  
// compile with: /reference:CS1682.dll /reference:CS1682_b.dll /W:1  
// CS1682 expected  
class Tester {  
   static void Main()  
   {  
      Ref.A1().M1();  
   }  
}