#c# #events #lambda #refactoring #resharper
#c# #Мероприятия #лямбда #рефакторинг #resharper
Вопрос:
Как преобразовать обработчик лямбда-события в классический метод с помощью инструментов рефакторинга Resharper или Visual studio? Проблема, по-видимому, из-за закрытия. И не всегда возможно преобразовать обработчик лямбда-события в метод.
Комментарии:
1. Ваш вопрос неясен, но, похоже, вы ответили на свой собственный вопрос.
Ответ №1:
Я не знаю, лучший ли это способ сделать это, но я сделал это около 2 минут назад. (Если у вас есть re-sharper) Скопируйте код внутри лямбда-выражения, а затем удалите метод непосредственно перед =, а затем нажмите ctrl-alt-пробел и в раскрывающемся списке re-sharper выберите опцию CreateMethod. Теперь вставьте код в метод, созданный re-sharper
Комментарии:
1. Я довольно часто пропускаю этот рефакторинг, например, опцию в «Метод извлечения», которая создавала бы метод из лямбды, при условии, что он ничего не фиксирует.
Ответ №2:
если сигнатуры метода верны, вы можете выполнить метод extract в теле лямбда-выражения, а затем встроить лямбда-выражение.