CA1017: Bütünleştirilmiş kod parçalarını ComVisibleAttribute ile işaretleme

Özellik Değer
Kural Kimliği CA1017
Başlık Derlemeleri ComVisibleAttribute ile işaretleyin
Kategori Tasarım
Düzeltme bozucu ya da bozmayan olabilir Kesintisiz
.NET 10'da varsayılan olarak etkin Hayır
Geçerli diller C# ve Visual Basic

Neden

Bir montajda System.Runtime.InteropServices.ComVisibleAttribute özniteliği uygulanmamış.

Kural açıklaması

özniteliği, ComVisibleAttribute COM istemcilerinin yönetilen koda nasıl erişeceğini belirler. İyi bir tasarım, derlemelerin COM görünürlüğünü açıkça belirtmesini gerektirir. 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ği 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 örnek, COM istemcilerinin görmesini önlemek için ComVisibleAttribute özniteliği uygulanmış bir derlemeyi göstermektedir.

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

Ayrıca bkz.