Compartilhar via


CA1014: marcar assemblies com CLSCompliantAttribute

TypeName

MarkAssembliesWithClsCompliant

CheckId

CA1014

Categoria

Microsoft.Design

Alteração Significativa

Sem quebra

Causa

Um assembly não tenha um atributo de CLSCompliantAttribute aplicado a ela.

Descrição da Regra

CLS (CLS) define a nomeação de restrições, os tipos de dados, e as regras para que os assemblies devem se conformar se serão usadas pelas linguagens de programação.O bom design exige que todos os assemblies indica explicitamente a conformidade com CLS de CLSCompliantAttribute.Se o atributo não está presente em um assembly, o assembly não for compatível.

É possível que um assembly compatível com CLS conter tipos ou membros de tipo que não são compatíveis.

Como Corrigir Violações

Para corrigir uma violação desta regra, adicione o atributo ao assembly.Em vez de marcar o assembly como inteiro de não conformidade, você deve determinar qual o tipo ou membros de tipo não é compatível e marcar esses elementos como tal.Se possível, você deve fornecer uma alternativa compatível com CLS para membros de não conformidade de forma que o público possível a mais larga pode acessar toda a funcionalidade do assembly.

Quando Suprimir Alertas

Não elimine um alerta desta regra.Se você não quiser que o assembly para ser compatível, aplicar o atributo e defina seu valor como false.

Exemplo

O exemplo a seguir mostra um assembly que tem o atributo de CLSCompliantAttribute aplicado o que declara compatível com CLS.

Imports System

<assembly:CLSCompliant(true)>
Namespace DesignLibrary
End Namespace
using System;

[assembly:CLSCompliant(true)]
namespace DesignLibrary {}
using namespace System;

[assembly:CLSCompliant(true)];
namespace DesignLibrary {}

Consulte também

Referência

CLSCompliantAttribute

Conceitos

Independência da linguagem e componentes independentes da linguagem