Arti tingkat peringatan Visual Studio?

92

Pada tab membangun dalam proyek Aplikasi Web saya memiliki pengaturan yang disebut "Tingkat Peringatan". Saya dapat menetapkan nilai dari 0 hingga 4. Apa arti nilai-nilai ini? Akankah nilai 0 lebih ketat dan menghasilkan lebih banyak peringatan, atau sebaliknya? Saya belum dapat menemukan dokumentasi apa pun tentangnya, tetapi mungkin saya mencari di tempat yang salah.

Jon Tackabury
sumber

Jawaban:

108

Tautan ini menunjukkan kepada Anda definisi tingkat peringatan (saya berasumsi Anda menggunakan kode C # dalam proyek web Anda). Level 4 adalah yang paling ketat.


  • 0: Mematikan emisi semua pesan peringatan.
  • 1: Menampilkan pesan peringatan parah.
  • 2: Menampilkan peringatan level 1 ditambah beberapa, peringatan yang tidak terlalu parah, seperti peringatan tentang menyembunyikan anggota kelas.
  • 3: Menampilkan peringatan level 2 ditambah beberapa, peringatan yang tidak terlalu parah, seperti peringatan tentang ekspresi yang selalu bernilai benar atau salah .
  • 4: Menampilkan semua peringatan level 3 ditambah peringatan informasional. Ini adalah tingkat peringatan default di baris perintah.
mwigdahl.dll
sumber
Terima kasih, itulah yang saya cari.
Jon Tackabury
7
Bolehkah saya menyarankan Anda untuk menyalin level dalam jawaban Anda seandainya tautan akan rusak. Sesuatu yang jarang terjadi dengan situs web Microsoft. : D
Samuel
10

Lebih tinggi lebih ketat. Mungkin menjengkelkan melihat semua peringatan yang mungkin atau mungkin tidak berarti banyak bagi aplikasi Anda, tetapi meluangkan waktu untuk membersihkannya dapat mengajari Anda banyak hal.

royatl
sumber
Saya mendukung ini. Ini mungkin opsi yang bagus misalnya untuk proyek pengujian unit, di mana menyertakan kumpulan aturan Anda mungkin berlebihan atau bahkan tidak cocok untuk jenis kode di sana.
Oliver Schimmer
8

Anda dapat memeriksa level Microsoft di sini . Level 0 pada dasarnya tidak ada sedangkan level 4 akan menjadi yang paling ketat.

itsmatt
sumber
8

0 mematikan peringatan sepenuhnya, sedangkan 4 adalah level paling verbose. Lihat dokumentasi di sini yang memiliki tingkat peringatan yang sama.

Adrian Grigore
sumber
0

Selain itu, F # naik ke Tingkat Peringatan 5:

--warn: tingkat peringatan

Menyetel level peringatan (0 hingga 5). Level defaultnya adalah 3. Setiap peringatan diberi level berdasarkan tingkat keparahannya. Level 5 memberikan lebih banyak, tetapi tidak terlalu parah, peringatan daripada level 1.

Peringatan Level 5 adalah: 21 (penggunaan rekursif diperiksa saat runtime), 22 (biarkan rec dievaluasi rusak), 45 (abstraksi penuh), dan 52 (salinan defensif)

https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/compiler-options

chuckc
sumber
-2

Misalnya menyetel tingkat peringatan ke 4 atau /W4berarti kompilator akan memperlakukan semua peringatan sebagai kesalahan. Ini sebagian besar adalah bagaimana kompilator bereaksi ketika melihat sesuatu yang tidak menyenangkan. Dan, omong-omong, tingkat 0 putaran dari semua peringatan.

dirkgently
sumber
8
Level 0 tidak mematikan peringatan, tetapi level 4 tidak memperlakukan peringatan sebagai kesalahan - ini "Menampilkan semua peringatan level 3 ditambah peringatan informasional."
zastrowm