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