CA1409: os tipos visíveis Com devem ser criáveis
TypeName |
ComVisibleTypesShouldBeCreatable |
CheckId |
CA1409 |
Categoria |
Microsoft.Interoperability |
Alteração Significativa |
Sem quebra |
Causa
Um tipo de referência que é marcado como especificamente visível ao Component Object Model (COM) contém um construtor público mas não com parâmetros contém um construtor (sem parâmetros) público padrão.
Descrição da Regra
Um tipo sem um construtor público padrão não pode ser criada por clientes COM.No entanto, o tipo ainda poderá ser acessado pelos clientes COM se outros meios estão disponíveis para criar o tipo e o passar ao cliente (por exemplo, com o valor de retorno da chamada do método).
A regra ignora os tipos derivados de Delegate.
Por padrão, os seguintes são visíveis à: os assemblies, tipos de chaves pública, membros públicos da instância do no utilitário, e todos os membros de tipos de valor públicos.
Como Corrigir Violações
Para corrigir uma violação desta regra, adicione um construtor padrão público ou remover ComVisibleAttribute do tipo.
Quando Suprimir Alertas
É seguro suprimir um aviso dessa regra se outros modos são fornecidas para criar e passe o objeto ao cliente da.
Regras Relacionadas
CA1017: marcar assemblies com ComVisibleAttribute
Consulte também
Conceitos
Qualificando tipos do .NET para interoperação