Menyederhanakan pola properti (IDE0170)
Properti | Nilai |
---|---|
ID Aturan | IDE0170 |
Judul | Menyederhanakan pola properti |
Kategori | Gaya |
Subkategori | Aturan bahasa (preferensi pencocokan pola) |
Bahasa yang berlaku | C# |
Opsi | csharp_style_prefer_extended_property_pattern |
Gambaran Umum
Aturan gaya ini menandai penggunaan pola berlapis dalam pola properti. Pola berlapis dapat disederhanakan untuk menggunakan pola properti yang diperluas di mana subpattern properti digunakan untuk mereferensikan anggota berlapis. Pola properti yang diperluas meningkatkan keterbacaan kode.
Opsi
Opsi menentukan perilaku yang Anda inginkan untuk diterapkan aturan. Untuk informasi tentang mengonfigurasi opsi, lihat Format opsi.
csharp_style_prefer_extended_property_pattern
Properti | Nilai | Deskripsi |
---|---|---|
Nama opsi | csharp_style_prefer_extended_property_pattern | |
Nilai opsi | true |
Lebih suka pola properti yang diperluas. |
false |
Menonaktifkan aturan. | |
Nilai opsi default | true |
Contoh
public record Point(int X, int Y);
public record Segment(Point Start, Point End);
// Violates IDE0170.
static bool IsEndOnXAxis(Segment segment) =>
segment is { Start: { Y: 0 } } or { End: { Y: 0 } };
// Fixed code.
static bool IsEndOnXAxis(Segment segment) =>
segment is { Start.Y: 0 } or { End.Y: 0 };
Menyembunyikan peringatan
Jika Anda hanya ingin menekan satu pelanggaran, tambahkan direktif pra-prosesor ke file sumber Anda untuk dinonaktifkan lalu aktifkan kembali aturan.
#pragma warning disable IDE0170
// The code that's violating the rule is on this line.
#pragma warning restore IDE0170
Untuk menonaktifkan aturan untuk file, folder, atau proyek, atur tingkat keparahannya ke none
dalam file konfigurasi.
[*.{cs,vb}]
dotnet_diagnostic.IDE0170.severity = none
Untuk menonaktifkan semua aturan gaya kode, atur tingkat keparahan untuk kategori Style
none
ke dalam file konfigurasi.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Untuk informasi selengkapnya, lihat Cara menyembunyikan peringatan analisis kode.