Ответ 1
* Примечание: см. http://www.jetbrains.net/devnet/message/5244658 для другой версии этого ответа.
Чтение сообщений, похоже, есть некоторая путаница в отношении исходного вопроса. Позвольте мне нанести удар.
Оригинальная статья действительно задает вопрос: "Как мне идентифицировать и удалять ссылки из одного проекта Visual Studio на другие проекты/сборки, которые не используются?" Плакат хочет, чтобы сборки больше не отображались как часть выхода сборки.
В этом случае ReSharper может помочь вам идентифицировать их, но вы должны удалить их самостоятельно.
Чтобы сделать это, откройте ссылку в браузере решений, щелкните правой кнопкой мыши на каждой ссылочной сборке и выберите "Найти зависимый код". См:
http://www.jetbrains.com/resharper/features/navigation_search.html#Find_ReferencedDependent_Code
Вы либо получите:
-
Список зависимостей от этой ссылки в окне браузера или
-
Диалоговое окно, в котором указано, что "Код, зависящий от модуля XXXXXXX, не найден".
Если вы получите второй результат, затем щелкните правой кнопкой мыши ссылку, выберите "Удалить" и удалите его из своего проекта.
Пока вам нужно "вручную", то есть одну ссылку за раз, она выполнит задание. Если кто-то автоматизировал это каким-то образом, мне интересно узнать, как это было сделано.
Вы можете в значительной степени игнорировать те, что содержатся в .Net Framework, поскольку они обычно не копируются на ваш вывод сборки (обычно - хотя это и не обязательно верно для приложений Silverlight).
Некоторые сообщения, кажется, отвечают на вопрос: "Как удалить с помощью предложений (С#) из файла исходного кода, которые не нужны для решения каких-либо ссылок внутри этого файла".
В этом случае ReSharper помогает с помощью нескольких способов:
-
Идентифицирует неиспользуемые варианты использования для вас во время обнаружения ошибки fly. Они отображаются в виде предупреждений об инспекции кода - код будет отображаться серым цветом (по умолчанию) в файле, а ReSharper предоставит подсказку, чтобы удалить его:
http://www.jetbrains.com/resharper/features/code_analysis.html#On-the-fly_Error_Detection
-
Позволяет автоматически удалить их как часть процесса очистки кода:
Наконец, поймите, что ReSharper делает статический анализ кода на вашем решении. Итак, если у вас есть динамическая ссылка на сборку - скажем, через отражение или сборку, динамически загружаемую во время выполнения и доступную через интерфейс - она не подберет ее. Нет смысла понимать ваш код базы и зависимостей проекта при работе над вашим проектом. Я действительно считаю, что функции ReSharper очень полезны.