Udostępnij za pośrednictwem


CA1017: Oznacz zestawy za pomocą ComVisibleAttribute

TypeName

MarkAssembliesWithComVisible

CheckId

CA1017

Kategoria

Microsoft.Design

Zmiana kluczowa

Niekluczowa

Przyczyna

Zestaw nie posiada zastosowanego atrybutu ComVisibleAttribute.

Opis reguły

Atrybut ComVisibleAttribute określa, w jaki sposób klienci COM uzyskują dostęp do kodu zarządzanego.Zasada dobrego projektowania nakazuje, aby zestawy jawnie wskazywały widoczność COM.Widoczność COM można ustawić dla całego zestawu, a następnie zastąpić dla poszczególnych typów i elementów członkowskich typu.Jeśli atrybut nie jest obecny, zawartość zestawu jest widoczna dla klientów COM.

Jak naprawić naruszenia

Aby naprawić naruszenie tej reguły, dodaj atrybut do zestawu.Jeśli nie chcesz, żeby zestaw był widoczny dla klientów COM, zastosuj atrybut i ustaw jego wartość na false.

Kiedy pominąć ostrzeżenia

Nie pomijaj ostrzeżeń dla tej reguły.Jeśli chcesz, żeby zestaw był widoczny, zastosuj atrybut i ustaw jego wartość na true.

Przykład

Poniższy przykład pokazuje zestaw, który posiada zastosowany atrybut ComVisibleAttribute, aby zapobiec byciu widocznym dla klientów 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 {}

Zobacz też

Koncepcje

Kwalifikowanie typów .NET do międzyoperacyjności

Inne zasoby

Współdziałanie z kodem niezarządzanym