Значения уровня предупреждений Visual Studio?

92

На вкладке сборки в проекте веб-приложения у меня есть параметр «Уровень предупреждения». Я могу установить значение от 0 до 4. Что означают эти значения? Будет ли значение 0 более строгим и генерировать больше предупреждений или наоборот? Мне пока не удалось найти по нему документацию, но, возможно, я ищу не в том месте.

Джон Тэкабери
источник

Ответы:

108

Эта ссылка показывает вам определения уровней предупреждений (я предполагаю, что вы используете код C # в своем веб-проекте). 4 уровень - самый строгий.


  • 0: выключает выдачу всех предупреждающих сообщений.
  • 1: Отображает серьезные предупреждающие сообщения.
  • 2: отображает предупреждения уровня 1, а также некоторые менее серьезные предупреждения, такие как предупреждения о сокрытии членов класса.
  • 3: отображает предупреждения уровня 2 плюс некоторые менее серьезные предупреждения, такие как предупреждения о выражениях, которые всегда имеют значение true или false .
  • 4: Отображает все предупреждения уровня 3 плюс информационные предупреждения. Это уровень предупреждений по умолчанию в командной строке.
Мвигдаль
источник
Спасибо, это именно то, что я искал.
Джон Тэкабери,
7
Могу я предложить вам скопировать уровни в вашем ответе на случай, если ссылка не работает. То, что редко случается с веб-сайтом Microsoft. : D
Самуэль
10

Выше - строже. Может раздражать видеть все предупреждения, которые могут иметь или не иметь большого значения для вашего приложения, но потратив время на их устранение, вы можете многому научиться.

Роятль
источник
Я поддерживаю это. Это может быть хорошим вариантом, например, для проектов модульного тестирования, где включение вашего набора правил может быть излишним или даже непригодным для данного типа кода.
Оливер Шиммер
8

0 полностью отключает предупреждения, а 4 - самый подробный уровень. См. Документацию здесь, в которой указаны такие же уровни предупреждений.

Адриан Григоре
источник
0

Кроме того, F # достигает уровня предупреждения 5:

--warn: уровень предупреждения

Устанавливает уровень предупреждения (от 0 до 5). Уровень по умолчанию - 3. Каждому предупреждению присваивается уровень в зависимости от его серьезности. Уровень 5 дает больше, но менее серьезных предупреждений, чем уровень 1.

Предупреждения уровня 5: 21 (рекурсивное использование проверяется во время выполнения), 22 (пусть rec оценивается не по порядку), 45 (полная абстракция) и 52 (защитная копия)

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

chuckc
источник
-2

Например, установка уровня предупреждения на 4 или /W4означает, что компилятор будет рассматривать все предупреждения как ошибки. В основном это то, как компилятор реагирует, когда видит что-то, что ему не нравится. И, кстати, уровень 0 включает все предупреждения.

ласково
источник
8
Уровень 0 отключает предупреждения, но уровень 4 не рассматривает предупреждения как ошибки - он «отображает все предупреждения уровня 3 плюс информационные предупреждения».
zastrowm 01