Подтвердить что ты не робот

Как остановить переключение Resharper между Enumerable.ToList и предложением Select

Если я использую функцию очистки кода Resharper, я нахожу свой код...

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList();

изменено на...

var personInfos = Enumerable.ToList(persons.Select(Mapper.Map<PersonInfo>));

Но затем Resharper делает предложение "для вызова метода расширения" для Enumerable.ToList, поэтому код возвращается к...

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList();

Я проверил параметры редактирования кода Resharper, но я не вижу, где/как я могу остановить это поведение переключения.

4b9b3361

Ответ 1

Я думаю, что @Matthias может быть правильным

Я обновил текущий Resharper, т.е. 2016.1.2, и попробовал код...

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList();

Resharper больше не предлагает предложение

И @Vlad274 это с моей очисткой кода Optimise 'using' directives и Shorten qualified references, все еще отмеченные

Ответ 2

Чтобы исправить это, вам нужно создать собственный профиль очистки. Ниже показаны две настройки, которые необходимо отключить.

Настройки

По умолчанию полная очистка включает обе настройки. Если какая-либо настройка включена, очистка сделает этот переключатель.

Ответ 3

В качестве альтернативы модернизации и, возможно, более общего решения:

В меню проверки кода вы должны иметь инспекцию "Преобразовать вызов статического метода..." есть опция "настроить интенсивность проверки". Здесь вы сможете выбрать: не показывать.

Работает лучше всего, если вы сохраните эти настройки в файле общих настроек, чтобы все работающие над этим решением обменивались этим параметром автоматически.