* Примечание: см. 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 выполняет статический анализ кода вашего решения. Таким образом, если у вас есть динамическая ссылка на сборку - скажем, через отражение или сборку, которая динамически загружается во время выполнения и доступна через интерфейс, - она не подхватится. Ничто не заменит понимание вашего кода. base и зависимостей проекта, когда вы работаете над своим проектом. Я считаю, что функции ReSharper очень полезны.
person
jlo
schedule
05.09.2009