Предположим, у меня есть следующий код:
public static void PrintFoo(int i)
{
switch (i)
{
case 0:
Console.WriteLine("bar!");
break;
case 1:
Console.WriteLine("baz!");
break;
default:
// do nothing
break;
}
}
Мне нужен регистр переключателя «по умолчанию» с комментарием, так как он показывает, что я намеренно не обрабатываю никакие значения, кроме 0 и 1. Если я пропущу регистр по умолчанию, неясно, хотел ли я ничего не делать, или просто забыл. Действительно, если я удаляю заданный по умолчанию случай, я получаю ошибки от «Переключателя заполнения IDE0010», отображающегося в окне ошибок.
По умолчанию Resharper считает это ошибкой, поэтому я отключил эту проверку (Параметры Resharper -> Серьезность проверки -> C # -> Избыточности в коде -> Раздел избыточного пустого переключателя).
У меня проблема в том, что когда я запускаю очистку кода, он удаляет регистр по умолчанию, включая комментарий. В общем, я все еще хочу, чтобы очистка кода исправляла все остальные избыточности в файле, поэтому отключение «Удалить избыточность кода» в профиле очистки кода не является вариантом. Есть ли способ заставить его не удалять регистр по умолчанию в операторе switch?
РЕДАКТИРОВАТЬ: Кажется, что дело default
удаляется только в том случае, если в окне очистки кода я выбрал «Удалить избыточность кода» и любой дочерний элемент «Стиль кода». Если я отменяю выбор всех элементов стиля кода, регистр по умолчанию не удаляется, или если я отменяю выбор избыточности кода, он также не удаляется. Похоже, мне придется поднять это как ошибку в Resharper.