2010-05-12 1 views
0

В VS2008, для C#, Как я могу выяснить, какие ссылки необходимы, а какие нет? Если вы посмотрите в проводнике решений для определенного проекта и развернете папку с ссылками, есть ли способ рассказать те, которые никогда не вызываются? Будет ли это определено во время компиляции и просто не включено?В VS2008, для C#, Как я могу выяснить, какие ссылки необходимы, а какие нет?

ответ

4

Похож на Resharper is it. Однако я не стал бы слишком беспокоиться об этом, так как неиспользуемые сборки - ignored by the compiler.

4

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

Если вы хотите быть обсессивно-компульсивным (например, я часто бываю :), тогда вы можете просто удалить его, перестроить и если есть ошибка, добавьте его обратно. Если ошибок нет, перейдите к следующему. Недостатком этого является то, что если вы удалите ссылку, которую вы не используете , теперь, но вы хотите использовать ее позже, вы должны помнить, какие классы находятся в сборке (например, если вы удаляете System.Core, тогда вам нужно помнить что System.Linq вещи есть, если вы когда-нибудь решите использовать его позже)

+0

Я делаю то же самое, потому что я навязчиво-компульсивно об этом. Мне не нравятся дополнительные ссылки, потому что другие могут подумать, что они являются необходимыми ссылками. Если я включаю ссылку, которая не нужна, я добавляю readme.text в корневую папку проекта и объясняю, почему я сохранил ссылку. – AMissico

+0

Кроме того, ссылки на сторонние библиотеки всегда включают эти библиотеки в выходную папку, поэтому я всегда удаляю те, которые не используются. – AMissico

2

Reflector на помощь еще раз!

  1. File> Open> Ваша сборка
  2. Щелкните правой кнопкой мыши узел в левой панели и выберите Анализ
  3. На правой панели разверните зависит от

Это создаст список все из них, от которых он зависит, и все их зависимости, вплоть до черепах.