Удаление и сортировка не работают в Visual Studio 2019 - PullRequest
1 голос
/ 27 марта 2020

Для определенного решения опция «Удалить и отсортировать» не работает. Он сортирует Usings правильно, но не удаляет ненужные. IDE правильно помечает неиспользуемые, но не может удалить их. Ошибки и сообщения не отображаются нигде, он сортируется и ведет себя так, как будто он успешно завершен, но ненужные использования остаются и помечаются Intellisense как таковые.

Я убедился, что в другом решении это работает, так что это не мой VS2019 установить. И у меня нет установленных плагинов (например, Resharper), которые могут конфликтовать. Также пытались очистить и перестроить на случай, если для работы понадобится безошибочная компиляция.

Есть какие-либо идеи, которые могут отличаться / особенные в конкретном решении, которое препятствует удалению?

Ответы [ 3 ]

2 голосов
/ 15 апреля 2020

Я нашел еще одну вещь, которая вызывает эту проблему.

Я обнаружил, что это происходит только в одном конкретном проекте в решении.

После сравнения нерабочего csproj с рабочим я определил, что разница была уровнем предупреждения.

Неработающий был установлен равным 1.

Сброс значения по умолчанию 4 позволяет использовать функции удаления и сортировки должным образом.

2 голосов
/ 30 марта 2020

Есть ли какие-нибудь идеи, которые могут отличаться / особенные в определенном решении, которое препятствует удалению?

Это довольно странное поведение. Я предлагаю вам попробовать следующие предложения:

1) закрыть экземпляр VS, удалить .vs скрытую папку, bin, obj папку.

2) очистка против кэшей компонентов в C:\Users\xxx\AppData\Local\Microsoft\VisualStudio\16.0_xxxx(every this folder)\ComponentModelCache

3) использование devenv / safemode для запуска VS IDE, откройте ваш проект и повторите тестирование .

4) Если ваш проект является старым проектом, что означает, что структура проекта немного отличается от VS2019, попробуйте создать новый проект vs2019, а затем перенести его содержимое в новый проект.

Кроме того , если они не работают, вы можете попробовать функцию этой ссылки для запуска команды очистки кода с помощью remove unused usings.

1 голос
/ 30 марта 2020

Я нашел причину, и она раздражает!

Существует пользовательский набор правил, заданный для анализа проектов c, в котором не выбраны как CS8019, так и IDE0065 (необязательно с использованием директивы).

При выборе этих команд команда удаления неиспользованных использовалась снова.

Спасибо за ответы на другие вопросы.

...