Bagikan melalui


Menghapus ekspresi lambda yang tidak perlu (IDE0200)

Harta benda Nilai
ID Aturan IDE0200
Judul Menghapus ekspresi lambda yang tidak perlu
Kategori Gaya
Subkategori Aturan bahasa (preferensi blok kode)
bahasa yang berlaku C# 11+
Opsi csharp_style_prefer_method_group_conversion

Ikhtisar

Aturan ini menandai penggunaan ekspresi lambda di mana tidak perlu. Ekspresi Lambda mungkin tidak perlu ketika semua hal berikut ini benar:

  • Ekspresi menyertakan pemanggilan metode.
  • Ekspresi lambda memiliki jumlah dan urutan parameter yang sama dengan pemanggilan metode.
  • Pemanggilan metode ini tidak memiliki efek samping.
  • Ekspresi lambda tidak dihubungkan ke tipe yang bukan delegasi.
  • Jika pemanggilan adalah metode generik, argumen tipe disediakan.
  • Jenis pengembalian metode yang dipanggil dapat dikonversi ke jenis pengembalian ekspresi lambda.
  • Hanya ada satu metode yang berlaku dalam grup metode.

Pilihan

Opsi menentukan perilaku yang Anda inginkan untuk diberlakukan aturan. Untuk informasi tentang mengonfigurasi opsi, lihat format Opsi .

csharp_style_prefer_method_group_conversion

Harta benda Nilai Deskripsi
Nama opsi prefer_csharp_gaya_perubahan_grup_metode
nilai opsi true Lebih suka mengonversi ekspresi lambda ke grup metode.
false Menonaktifkan aturan.
nilai opsi default true

Contoh

// Code with violations.
bool IsEven(int x) => x % 2 == 0;
_ = new[] { 1, 2, 3 }.Where(n => IsEven(n));

// Fixed code.
bool IsEven(int x) => x % 2 == 0;
_ = new[] { 1, 2, 3 }.Where(IsEven);

Menyembunyikan peringatan

Jika Anda hanya ingin menekan satu pelanggaran, tambahkan direktif prapemrosesan ke file sumber Anda untuk menonaktifkan, kemudian mengaktifkan kembali aturan.

#pragma warning disable IDE0200
// The code that's violating the rule is on this line.
#pragma warning restore IDE0200

Untuk menonaktifkan aturan untuk file, folder, atau proyek, atur tingkat keparahannya ke none dalam file konfigurasi .

[*.{cs,vb}]
dotnet_diagnostic.IDE0200.severity = none

Untuk menonaktifkan semua aturan gaya kode, atur tingkat keparahan untuk kategori Style ke none dalam file konfigurasi .

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Untuk informasi selengkapnya, lihat Cara menekan peringatan analisis kode.

Lihat juga