Sdílet prostřednictvím


CA1017: Značka sestav s ComVisibleAttribute

TypeName

MarkAssembliesWithComVisible

CheckId

CA1017

Kategorie

Microsoft.Design

Narušující změna

Nenarušující

Příčina

Sestavení nemá aplikován atribut System.Runtime.InteropServices.ComVisibleAttribute.

Popis pravidla

Atribut ComVisibleAttribute určuje, jak klienti COM přistupují ke spravovanému kódu.Dobrý návrh přikazuje, že sestavení explicitně uvedou viditelnost modelu COM.Viditelnost COM lze nastavit pro celé sestavení a poté ji přepsat pro jednotlivé typy a členy typů.Není-li atribut přítomen, obsah sestavení je viditelný všem klientům COM.

Jak vyřešit porušení

Chcete-li opravit porušení tohoto pravidla, přidejte do sestavení uvedený atribut.Nepřejete-li si, aby bylo sestavení viditelné klientům COM, použijte tento atribut a nastavte jeho hodnotu na false.

Kdy potlačit upozornění

Nepotlačujte upozornění na toto pravidlo.Pokud si nepřejete, aby sestavení bylo viditelné, použijte atribut a nastavte jeho hodnotu na true.

Příklad

Následující příklad ukazuje sestavení, které má aplikován ComVisibleAttribute zabraňující viditelnosti sestavení pro klienty COM.

Imports System

<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
using System;

[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}
using namespace System;

[assembly: System::Runtime::InteropServices::ComVisible(false)];
namespace DesignLibrary {}

Viz také

Koncepty

Kvalifikační.Typy sítí pro součinnost

Další zdroje

Spolupráce s nespravovaným kódem.