Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
- CS0012: O tipo 'type' está definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'assembly'.
- CS0234: O tipo ou nome do namespace não existe no namespace (está faltando uma referência de assembly?)
- CS0246: O tipo ou nome do namespace não foi encontrado (está faltando uma diretiva using ou uma referência de assembly?)
- CS0400: O tipo ou nome do namespace não foi encontrado no namespace global (está faltando uma referência de assembly?)
- CS1068: O nome do tipo não pôde ser encontrado no namespace global. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS1069: Não foi possível encontrar o nome do tipo no namespace. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS1070: Não foi possível encontrar o nome do tipo. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS1704: Um assembly com o mesmo nome simples já foi importado. Tente remover uma das referências ou assine-as para habilitar a visualização lado a lado.
- CS1714: A classe base ou interface desse tipo não pôde ser resolvida ou é inválida.
- CS1760: vários assemblies se referem aos mesmos metadados, mas apenas um é uma referência vinculada (especificada usando a opção /link); considere remover uma das referências.
- CS7008: O nome do assembly é reservado e não pode ser usado como referência em uma sessão interativa.
- CS7068: Referência ao tipo alega estar definido neste assembly, mas não está definida na origem ou em qualquer módulo adicionado.
- CS7069: A referência ao tipo afirma que ele está definido em outro assembly, mas não foi possível encontrá-lo.
- CS7071: a referência de assembly é inválida e não pode ser resolvida.
- CS7079: O tipo é definido em um módulo que não foi adicionado. Você deve adicionar o módulo.
- CS8090: Há um erro em uma assemblagem referenciada.
- CS8203: Nome de assembly inválido.
- CS8206: O módulo 'nome do módulo' no assembly 'nome do assembly' está encaminhando o tipo 'nome do tipo' para vários assemblies: 'nome do primeiro assembly' e 'segundo nome do assembly'.
- CS8356: O tipo predefinido 'type name' é declarado em vários assemblies referenciados: 'first assembly name' e 'second assembly name'
- CS9286: O tipo não contém uma definição e nenhum membro de extensão acessível para o tipo de receptor pode ser encontrado (você está esquecendo uma diretiva de uso ou uma referência de assembly?)
Além disso, este artigo aborda os seguintes avisos:
- CS1683: referência ao tipo "Nome do Tipo" afirma que ele é definido neste assembly, mas não é definido na origem ou em nenhum módulo adicionado.
Referências ausentes
Os seguintes erros e avisos indicam que está faltando uma referência de assembly:
- CS0012: O tipo 'type' está definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'assembly'.
- CS0234: O nome do tipo ou namespace não existe no namespace (está faltando uma referência de assembly?)
- CS0246: O nome do tipo ou namespace não foi encontrado (está faltando uma diretiva using ou uma referência de assembly?)
- CS1714: A classe base ou interface desse tipo não pôde ser resolvida ou é inválida.
- CS9286: O tipo não contém uma definição e nenhum membro de extensão acessível para o tipo receptor foi encontrado (está faltando uma diretiva using ou uma referência de assembly?)
Esses erros do compilador indicam um destes problemas em seu código:
- O projeto não faz referência ao assembly necessário. Para corrigir esse erro, adicione uma referência ao assembly necessário.
- Você digitou incorretamente o nome de um tipo. Verifique o nome do tipo.
- Você usou um nome de variável onde o nome de um System.Type era esperado, como no operador
typeofou no operadoris. - Você usou o operador de escopo global (
::) quando o tipo não está no namespace global. - Você está acessando um membro de extensão e o namespace não está especificado em uma diretiva
usingou você não está referenciando o assembly que contém a extensão.
Quando o assembly parece ser referenciado
Se o assembly parecer estar referenciado em seu projeto, mas você ainda receber CS0012, tente estas etapas de solução de problemas:
Restaurar pacotes: execute
dotnet restorepara garantir que todas as referências de pacote sejam resolvidas corretamente, especialmente depois de instalar ou desinstalar pacotes NuGet.Limpe o cache de pacotes NuGet e restaure:
dotnet nuget locals all --clear dotnet restoreVerificar se há conflitos de versão: verifique se todos os assemblies referenciados usam versões compatíveis. Procure por avisos de redirecionamento de vinculação na saída de compilação.
Limpe a solução e recompile para garantir que nenhuma referência obsoleta permaneça:
dotnet clean dotnet buildVerifique a integridade do pacote: se o erro ocorreu após as operações do pacote, verifique se o pacote foi instalado corretamente removendo-o e reinstalando-o:
dotnet remove package [PackageName] dotnet add package [PackageName]
Encaminhamento de tipo
- CS1068: O nome do tipo não pôde ser encontrado no namespace global. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS1069: Não foi possível encontrar o nome do tipo no namespace. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS1070: Não foi possível encontrar o nome do tipo. Esse tipo foi encaminhado para outro assembly. Considere adicionar uma referência a esse assembly.
- CS8206: O módulo 'nome do módulo' no conjunto 'nome do assembly' está encaminhando o tipo 'nome do tipo' para vários conjuntos: 'nome do primeiro conjunto' e 'nome do segundo conjunto'.
CS1068, CS1069 e CS1070 indicam um erro ao fazer referência a um tipo encaminhado para um assembly diferente. Adicione uma referência ao assembly indicado na mensagem de erro.
CS8206 indica metadados conflitantes do encaminhador de tipo em um assembly ou módulo referenciado. O mesmo tipo é encaminhado para mais de um assembly de destino. Use dependências corrigidas ou recriadas que encaminham o tipo para um destino. Verifique se as versões de pacote e assembly são consistentes ou remova a referência que introduz os metadados conflitantes. Os aliases de origem ou alterações não relacionadas às declarações de tipo local não corrigem os metadados referenciados.
Referências duplicadas
Os seguintes erros indicam uma referência de assembly duplicada:
- CS1704: Um assembly com o mesmo nome simples já foi importado. Tente remover uma das referências ou assine-as para habilitar a visualização lado a lado.
- CS1760: vários assemblies se referem aos mesmos metadados, mas apenas um é uma referência vinculada (especificada usando a opção /link); considere remover uma das referências.
- CS8356: O tipo predefinido 'type name' é declarado em vários assemblies referenciados: 'first assembly name' e 'second assembly name'
Para corrigir esses erros, remova uma das referências ou resolva a duplicação. As causas da duplicação incluem:
- Vários assemblies não assinados com o mesmo nome.
- Seu projeto referencia várias versões do mesmo assembly.
Para CS8356, remova ou substitua a referência duplicada ou incompatível que define o mesmo tipo de runtime predefinido. Verifique se o projeto tem como alvo um único framework coerente e um conjunto de assemblies de referência. Não adicione outra definição de origem do tipo predefinido.
Referência de assembly inválida
Os seguintes erros indicam que uma referência de assembly é inválida:
- CS7008: O nome do assembly está reservado e não pode ser usado como referência em uma sessão interativa.
- CS7068: A referência ao tipo alega que ele está definido neste assembly, mas não está definido no código-fonte nem em nenhum módulo adicionado.
- CS7069: A referência ao tipo afirma que ele está definido em outro assembly, mas não foi possível encontrá-lo.
- CS7071: a referência de assembly é inválida e não pode ser resolvida.
- CS7079: O tipo é definido em um módulo que não foi adicionado. Você deve adicionar o módulo.
- CS8090: Há um erro em um assembly referenciado.
- CS8203: Nome de assembly inválido.
O aviso a seguir também indica um assembly de referência inválida:
- CS1683: Referência ao tipo 'Nome do Tipo' afirma que ele é definido neste assembly, mas não está definido na origem ou em nenhum módulo adicionado
Verifique se você escreveu corretamente o nome do conjunto. O arquivo de assembly referenciado pode ser inválido.