Ler em inglês

Partilhar via


O tipo '<typename1>' não pode ser marcado como compatível com CLS porque o seu tipo que contém '<typename2>' não é compatível com CLS

Uma classe ou interface é marcada como <CLSCompliant(True)> quando está aninhada em um tipo marcado como <CLSCompliant(False)> ou não marcado.

Para que uma classe ou interface seja compatível com o Language Independence and Language-Independent Components (CLS), toda a sua hierarquia de contenção deve ser compatível. Isso significa que todos os tipos em que ele está aninhado devem estar em conformidade.

Ao aplicar o CLSCompliantAttribute a um elemento de programação, você define o parâmetro do isCompliant atributo como ou TrueFalse para indicar conformidade ou não conformidade. Não há nenhum padrão para esse parâmetro e você deve fornecer um valor.

Se você não aplicar o CLSCompliantAttribute a um elemento, ele será considerado não compatível.

Por padrão, essa mensagem é um aviso. Para obter informações sobre como ocultar avisos ou tratar avisos como erros, consulte Configurando avisos no Visual Basic.

ID de erro: BC40030

Para corrigir este erro

  • Se você precisar de conformidade CLS, defina esse tipo dentro de uma hierarquia de contenção diferente.

  • Se você exigir que esse tipo permaneça dentro de sua hierarquia de contenção atual, remova o de sua definição ou marque-o CLSCompliantAttribute como <CLSCompliant(False)>.