CA1017: Marcar assemblies com ComVisibleAttribute
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 8 | 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 {}
Consulte também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários