Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
| Property | valor |
|---|---|
| ID da regra | CA1017 |
| Título | Marcar assemblies com ComVisibleAttribute |
| Categoria | Desenho |
| A correção está quebrando ou não quebrando | Sem quebra |
| Habilitado por padrão no .NET 10 | Não |
Motivo
Um assembly não tem o System.Runtime.InteropServices.ComVisibleAttribute atributo aplicado a ele.
Descrição da regra
O ComVisibleAttribute atributo determina como os clientes COM acessam o código gerenciado. Um bom design dita que as montagens indiquem explicitamente a visibilidade COM. A visibilidade COM pode ser definida para um conjunto inteiro e, em seguida, substituída para tipos individuais e membros do tipo. Se o atributo não estiver presente, o conteúdo do assembly será visível para clientes COM.
Como corrigir violações
Para corrigir uma violação dessa regra, adicione o atributo ao assembly. Se você não quiser que o assembly fique visível para clientes COM, aplique o atributo e defina seu valor como false.
Quando suprimir avisos
Não suprima um aviso desta regra. Se desejar que o assembly fique visível, aplique o atributo e defina seu valor como true.
Exemplo
O exemplo a seguir mostra um assembly que tem o ComVisibleAttribute atributo aplicado para impedir que ele seja visível para clientes COM.
<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}