CA1014: Značka sestav s CLSCompliantAttribute
TypeName |
MarkAssembliesWithClsCompliant |
CheckId |
CA1014 |
Kategorie |
Microsoft.Design |
Narušující změna |
Nenarušující |
Příčina
Sestavení nemá aplikován atribut System.CLSCompliantAttribute.
Popis pravidla
Specifikace Common Language Specification (CLS) definuje omezení názvů, datové typy a pravidla, která musí sestavení dodržovat, pokud budou použita napříč programovacími jazyky.Dobrý návrh přikazuje, že všechna sestavení explicitně uvedou dodržování standardu CLS atributem CLSCompliantAttribute.Není-li atribut uveden v sestavení, nedodržuje sestavení standard.
Sestavení dodržující standard CLS může obsahovat typy nebo členy typů, které standard nedodržují.
Jak vyřešit porušení
Chcete-li opravit porušení tohoto pravidla, přidejte do sestavení uvedený atribut.Namísto označení celého sestavení jako nedodržujícího standard CLS by mělo být určeno, které typy a členy typů standard nedodržují, a ty patřičně označit.Je-li to možné, měly by spolu s nedodržujícími členy být dodány i alternativy dodržující standard CLS, aby funkce sestavení mohla využívat nejširší možná veřejnost.
Kdy potlačit upozornění
Nepotlačujte upozornění na toto pravidlo.Pokud si nepřejete, aby sestavení dodržovalo standard CLS, použijte atribut a nastavte jeho hodnotu na false.
Příklad
Následující příklad ukazuje sestavení, které má aplikován atribut System.CLSCompliantAttribute prohlašující, že sestavení dodržuje standard 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 {}