Bagikan melalui


Menghapus penetapan nilai yang tidak perlu (IDE0059)

Harta benda Nilai
ID Aturan IDE0059
Judul Menghapus penetapan nilai yang tidak perlu
Kategori Gaya
Subkategori Aturan kode yang tidak perlu (preferensi tingkat ekspresi)
Bahasa yang diterapkan C# dan Visual Basic
Opsi csharp_style_unused_value_assignment_preference
visual_basic_style_unused_value_assignment_preference

Ikhtisar

Aturan ini menandai penetapan nilai yang tidak perlu. Misalnya:

// IDE0059: value written to 'v' is never
// read, so assignment to 'v' is unnecessary.
int v = Compute();
v = Compute2();

Anda dapat mengambil salah satu tindakan berikut untuk memperbaiki pelanggaran ini:

  • Jika ekspresi di sisi kanan penugasan tidak memiliki efek samping, hapus ekspresi atau seluruh pernyataan penugasan. Ini meningkatkan performa dengan menghindari komputasi yang tidak perlu.

    int v = Compute2();
    
  • Jika ekspresi di sisi kanan penugasan memiliki efek samping, ganti sisi kiri penugasan dengan buang (hanya C#) atau variabel lokal yang tidak pernah digunakan. Membuang meningkatkan kejelasan kode dengan secara eksplisit menunjukkan niat untuk membuang nilai yang tidak digunakan.

    _ = Compute();
    int v = Compute2();
    

Pilihan

Opsi untuk ini menentukan apakah akan lebih memilih penggunaan variabel lokal yang dibuang atau tidak digunakan:

Untuk informasi tentang mengonfigurasi opsi, lihat format Opsi .

csharp_style_unused_value_assignment_preference

Harta benda Nilai Deskripsi
Nama opsi csharp_gaya_pengaturan_penugasan_nilai_tidak_terpakai
Bahasa yang relevan C#
nilai opsi discard_variable Lebih suka menggunakan buang saat menetapkan nilai yang tidak digunakan
unused_local_variable Lebih suka menggunakan variabel lokal saat menetapkan nilai yang tidak digunakan
nilai opsi default discard_variable
// csharp_style_unused_value_assignment_preference = discard_variable
int GetCount(Dictionary<string, int> wordCount, string searchWord)
{
    _ = wordCount.TryGetValue(searchWord, out var count);
    return count;
}

// csharp_style_unused_value_assignment_preference = unused_local_variable
int GetCount(Dictionary<string, int> wordCount, string searchWord)
{
    var unused = wordCount.TryGetValue(searchWord, out var count);
    return count;
}

Preferensi_penugasan_nilai_tidak_terpakai_gaya_visual_basic

Harta benda Nilai Deskripsi
Nama opsi preferensi_penugasan_nilai_tidak_terpakai_gaya_visual_basic
bahasa yang berlaku Visual Basic
Nilai Opsi unused_local_variable Lebih suka menggunakan variabel lokal saat menetapkan nilai yang tidak digunakan
nilai opsi default unused_local_variable
' visual_basic_style_unused_value_assignment_preference = unused_local_variable
Dim unused = Computation()

Menyembunyikan peringatan

Jika Anda hanya ingin mengabaikan satu pelanggaran, tambahkan arahan prapemrosesan ke file sumber Anda untuk menonaktifkan lalu mengaktifkan kembali aturan tersebut.

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

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

[*.{cs,vb}]
dotnet_diagnostic.IDE0059.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.

Harta benda Nilai
ID Aturan IDE0059
Judul Nilai tidak digunakan
Kategori Gaya
Bahasa yang Berlaku F#
Opsi Tidak

Ikhtisar

Aturan ini menandai penetapan nilai yang tidak perlu. Misalnya, answer tidak digunakan dalam cuplikan berikut:

type T() =
    let answer = 42

Lihat juga