CA1017: Derlemeleri ComVisibleAttribute ile işaretleme

Özellik Değer
Kural Kimliği CA1017
Başlık Derlemeleri ComVisibleAttribute ile işaretleyin
Kategori Tasarım
Hataya neden olan veya bozulmayan düzeltme Hataya neden olmayan
.NET 8'de varsayılan olarak etkin Hayır

Neden

Derlemede System.Runtime.InteropServices.ComVisibleAttribute özniteliği uygulanmaz.

Kural açıklaması

özniteliği, ComVisibleAttribute COM istemcilerinin yönetilen koda nasıl erişeceğini belirler. İyi tasarım derlemelerin açıkça COM görünürlüğünde gösterildiğini belirler. COM görünürlüğü bütün bir derleme için ayarlanabilir ve ardından tek tek türler ve tür üyeleri için geçersiz kılınabilir. Öznitelik yoksa, derlemenin içeriği COM istemcileri tarafından görülebilir.

İhlalleri düzeltme

Bu kuralın ihlalini düzeltmek için özniteliğini derlemeye ekleyin. Derlemenin COM istemcilerine görünür olmasını istemiyorsanız özniteliğini uygulayın ve değerini olarak falseayarlayın.

Uyarıların ne zaman bastırılması gerekiyor?

Bu kuraldan uyarıyı bastırmayın. Derlemenin görünür olmasını istiyorsanız özniteliğini uygulayın ve değerini olarak trueayarlayın.

Örnek

Aşağıdaki örnekte, COM istemcilerinin görmesini önlemek için özniteliğinin uygulandığı bir derleme ComVisibleAttribute gösterilmektedir.

<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}

Ayrıca bkz.