Visual studio 2010 Переключение генерации операторов по enum - PullRequest
21 голосов
/ 03 августа 2010

Есть ли способ получить генерацию операторов switch по enum?

Например, если у меня большое enum и у меня есть метод с параметром enum, то мне нужно кодировать операторы switch для каждого случая, ноЕсть ли способ генерировать этот оператор переключателя с помощью enum?

Если у меня много других перечислений, если у меня широкий диапазон перечислений, и если у меня есть 10-100 методов с различными параметрами перечислений, то в этом случае переключение кодирования становится адом.

Вероятно, это хорошая идея для создания шаблона t4, в любом случае, я рад услышать любые предложения о генерации переключателей enum.

Ищите решение без какого-либо дополнительного программного обеспечения, такого как Resharper.

Ответы [ 3 ]

22 голосов
/ 03 августа 2010

Visual Studio уже делает это. Введите switch, tab, чтобы завершить этот фрагмент, введите имя перечисления, и вы получите автоматически созданный оператор case.

15 голосов
/ 03 августа 2010

Visual Studio делает это с помощью фрагмента.

Введите switch, нажмите клавишу Tab, а затем введите имя переменной enum и нажмите Enter.

Вы должны получить оператор switch для каждого члена перечисления case'd.

2 голосов
/ 29 октября 2014

Попробовал возиться с обоими ответами выше и не смог заставить его работать на меня.Большая разница, которую я обнаружил, заключается в том, что вам нужно дважды нажать Tab после того, как вы начнете печатать switch.

Одна вкладка завершит оператор switch, но не откроет скобки.Двойное нажатие откроет паратезы и оставит курсор в середине, поэтому, когда вы начнете вводить переменную enum и табуляцию для ее автозаполнения, вы сгенерируете все операторы switch.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...