Конвенции ReSharper для названий обработчиков событий

Когда я добавляю новый обработчик событий для любого события, VS создает метод как object_Click. Но ReSharper подчеркивает этот метод как Предупреждение, потому что все методы не должны иметь никаких разделителей такой как "_".

Как я могу настроить правила ReSharper так, чтобы он не подчеркивал такие методы? Или я могу быть, должен переименовать такие методы?

Заранее спасибо.

53
задан Pavel Belousov 7 June 2010 в 18:33
поделиться

3 ответа

Лично я предлагаю переименовать методы. Обычно я думаю, что VS придумывает ужасные имена как для элементов управления, так и для событий.

Я предпочитаю, чтобы имя метода говорило о том, что он делает , а не о том, что он вызывает. Это также способствует повторному использованию. По общему признанию, сигнатура обработчика событий часто не идеальна для повторного использования - я бы сказал, что часто было бы полезно лямбда-выражение, вызывающее метод с более разумными параметрами:

button.Click += (sender, args) => SaveCurrentDocument();

но, очевидно, разработчик не поддерживает это: (

Конечно, переименование всех методов потребует больше усилий, чем просто изменение настроек R #, если вы найдете некоторые из них, которые работают ...

31
ответ дан 7 November 2019 в 08:22
поделиться

В меню файлов у вас должен быть "Resharper" Нажмите на него -> Options -> Naming conventions (в левом меню).

Оттуда вы можете указать, какие соглашения об именовании используются для каждого из типов/стилей именования.

0
ответ дан 7 November 2019 в 08:22
поделиться

Для C # (или VB) внесите следующие изменения:

ReSharper | Опции | Языки | C # | Стиль именования C #, Расширенные настройки ... Измените "Подписки на события для полей" с $ object $ _On $ event $ на $ object $ _ $ event $ .

Вы также можете добавить дополнительные правила к таким типам сущностей, как «Типы и пространства имен», чтобы учесть сгенерированные кодом классы, такие как « По умолчанию». Например, добавьте новое правило с префиксом имени «» и стилем имени «UpperCamelCase».

112
ответ дан 7 November 2019 в 08:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: