* Примечание: см. 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).
Некоторые сообщения, похоже, отвечают на вопрос: «Как мне удалить из файла исходного кода предложения using (C #), которые не нужны для разрешения любых ссылок в этом файле».
В этом случае ReSharper действительно помогает несколькими способами:
Определяет неиспользуемые предложения using во время обнаружения ошибок на лету. Они отображаются как предупреждения проверки кода - код будет выделен серым цветом (по умолчанию) в файле, и ReSharper предоставит подсказку для его удаления:
http://www.jetbrains.com/resharper/features/code_analysis.html#On-the-fly_Error_Detection
Позволяет автоматически удалять их в рамках процесса очистки кода:
http://www.jetbrains.com/resharper/features/code_formatting.html#Optimizing_Namespace_Import_Directives
Наконец, поймите, что ReSharper выполняет статический анализ кода вашего решения. Итак, если у вас есть динамическая ссылка на сборку - скажем, через отражение или сборку, которая динамически загружается во время выполнения и доступна через интерфейс, - она ее не заберет. Ничто не заменит понимание вашей кодовой базы и зависимостей проекта во время работы над своим проектом. Я считаю, что функции ReSharper очень полезны.