CA1017: Menandai rakitan dengan ComVisibleAttribute
Properti | Nilai |
---|---|
ID Aturan | CA1017 |
Judul | Menandai rakitan dengan ComVisibleAttribute |
Golongan | Desain |
Perbaikan bersifat disruptif atau non-disruptif | Non-disruptif |
Diaktifkan secara default di .NET 9 | No |
Penyebab
Rakitan tidak memiliki System.Runtime.InteropServices.ComVisibleAttribute atribut yang diterapkan padanya.
Deskripsi aturan
Atribut ComVisibleAttribute menentukan bagaimana klien COM mengakses kode terkelola. Desain yang baik menentukan bahwa rakitan secara eksplisit menunjukkan visibilitas COM. Visibilitas COM dapat diatur untuk seluruh rakitan lalu ditimpa untuk masing-masing jenis dan jenis anggota. Jika atribut tidak ada, konten assembly terlihat oleh klien COM.
Cara memperbaiki pelanggaran
Untuk memperbaiki pelanggaran aturan ini, tambahkan atribut ke rakitan. Jika Anda tidak ingin assembly terlihat oleh klien COM, terapkan atribut dan atur nilainya ke false
.
Kapan harus menekan peringatan
Jangan menyembunyikan peringatan dari aturan ini. Jika Anda ingin rakitan terlihat, terapkan atribut dan atur nilainya ke true
.
Contoh
Contoh berikut menunjukkan rakitan yang memiliki ComVisibleAttribute atribut yang diterapkan untuk mencegahnya terlihat oleh klien COM.
<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}