Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
| Properti | Nilai |
|---|---|
| ID Aturan | CA1515 |
| Judul | Pertimbangkan untuk membuat jenis publik internal |
| Golongan | Kemampu |
| Perbaikan bersifat disruptif atau non-disruptif | Non-disruptif |
| Diaktifkan secara default di .NET 10 | Tidak. |
Penyebab
Jenis di dalam rakitan yang dapat dieksekusi dinyatakan sebagai publik.
Deskripsi aturan
Tidak seperti pustaka kelas, API aplikasi biasanya tidak direferensikan secara publik, sehingga jenis dapat ditandai internal.
Jenis internal, pada gilirannya, dapat memperoleh manfaat dari berbagai penganalisis kode yang menargetkan API non-publik.
Cara memperbaiki pelanggaran
Tandai jenis sebagai internal.
Contoh
Cuplikan kode berikut menunjukkan pelanggaran CA1515:
// Inside a project with <OutputKind>Exe</OutputKind>.
public class Program
{
public static void Main(string[] args)
{
}
}
' Inside a project with <OutputKind>Exe</OutputKind>.
Public Class Program
Public Shared Sub Main(args As string())
End Sub
End Class
Cuplikan kode berikut memperbaiki pelanggaran:
// Inside a project with <OutputKind>Exe</OutputKind>.
internal class Program
{
public static void Main(string[] args)
{
}
}
' Inside a project with <OutputKind>Exe</OutputKind>.
Friend Class Program
Public Shared Sub Main(args As string())
End Sub
End Class
(Untuk informasi selengkapnya tentang jenis output proyek, lihat bagian "Jenis output" dari .NET Project Designer.)
Kapan harus menekan peringatan
Aman untuk menyembunyikan pelanggaran aturan ini jika Anda tidak khawatir tentang pemeliharaan kode Anda.
Menyembunyikan peringatan
Jika Anda hanya ingin menyembunyikan satu pelanggaran, tambahkan arahan praprosedur ke file sumber Anda untuk dinonaktifkan lalu aktifkan kembali aturannya.
#pragma warning disable CA1515
// The code that's violating the rule is on this line.
#pragma warning restore CA1515
Untuk menonaktifkan aturan untuk file, folder, atau proyek, atur tingkat keparahannya ke none dalam file konfigurasi.
[*.{cs,vb}]
dotnet_diagnostic.CA1515.severity = none
Untuk informasi selengkapnya, lihat Cara menyembunyikan peringatan analisis kode.
Mengonfigurasi kode yang akan dianalisis
Anda dapat mengonfigurasi jenis perakitan output mana yang akan diterapkan aturan ini. Misalnya, untuk hanya menerapkan aturan ini ke kode yang menghasilkan aplikasi konsol atau pustaka yang ditautkan secara dinamis (yaitu, bukan aplikasi UI), tambahkan pasangan kunci-nilai berikut ke file .editorconfig di proyek Anda:
dotnet_code_quality.CA1515.output_kind = ConsoleApplication, DynamicallyLinkedLibrary
Untuk informasi selengkapnya, lihat output_kind.