Есть ли способ подавить предупреждения в С#, похожие на аннотацию Java @SuppressWarnings?
В противном случае существует ли другой способ подавить предупреждения в Visual Studio?
Есть ли способ подавить предупреждения в С#, похожие на аннотацию Java @SuppressWarnings?
В противном случае существует ли другой способ подавить предупреждения в Visual Studio?
Да.
Для отключения используйте:
#pragma warning disable 0169, 0414, anyothernumber
Где числа - это идентификаторы предупреждений, которые вы можете прочитать из вывода компилятора.
Чтобы повторно использовать предупреждения после определенной части кода (что является хорошей идеей), используйте:
#pragma warning restore 0169, anythingelse
Таким образом вы можете сделать вывод компилятора чистым и сохранить себя в безопасности, потому что предупреждения будут подавлены только для этой части кода (где вы убедились, что вам не нужно их видеть).
Да, вы можете использовать аннотацию предупреждения pragma следующим образом:
#pragma warning disable 414
//some code that generates a warning
#pragma warning restore 414
опускание чисел отключает и восстанавливает все коды предупреждений...
Есть. См. Страницу MSDN о том, как подавлять предупреждения компилятора.
В Visual Studio перейдите к своим свойствам проекта, выберите вкладку сборки и введите номер предупреждения в поле "Подавить предупреждения".
Из кода, чтобы отключить определенные предупреждения, вы можете использовать директиву #pragma:
public class MyClass
{
#pragma warning disable 0168
// code
// optionally, restore warnings again
#pragma warning restore 0168
// more code
}
Я настоятельно рекомендую использовать следующую форму
#pragma warning disable 649 // Field 'field' is never assigned to, and will always have its default value 'value'
#pragma warning restore 649
Комментарий в первой строке взят из первого подобного из документации MSDN для Предупреждение компилятора (уровень 4) CS0649. Так как предупреждения нумеруются в С#, это ваша единственная ссылка на то, что на самом деле происходит в коде, когда вы видите предупреждение отключенным. Поместив его в конец строки, это единственный способ найти причину появления в окне результатов поиска, когда вы выполняете поиск по всему решению для предупреждения о прагме.
Вы можете определить номера предупреждений, посмотрев в окно Вывод после создания проекта. Убедитесь, что в нем указано Показать вывод из: Build.
Вы можете проверить директивы #pragma: http://msdn.microsoft.com/en-us/library/441722ys(VS.80).aspx.
Посмотрите SuppressMessageAttribute
в VisualStudio: http://msdn.microsoft.com/en-us/library/ms182068.aspx
Я думаю, вы также можете попытаться просмотреть свойства проекта или решения и установить уровень предупреждения на более низкий уровень. В противном случае другие ответы, возможно, лучше.
Вы можете использовать аннотацию данных SuppressMessage, которая предотвратит предупреждение.
Это выглядит примерно так:
[SuppressMessage("Reason #Enter whatever you'd like", "ID, must match what intellsense is showing it looks something like this: IDE0001", Justification = "(optional, your own description")]
Вот пример из реальной жизни:
[SuppressMessage("IntelliSenseCorrection", "IDE0001", Justification = "Do Not Remove <T> Variable, It Required For Dapper")]