Почему мне не нужны ссылки для невизуальной студии c # приложения - PullRequest
4 голосов
/ 20 апреля 2011

При разработке приложений на C # в Visual Studio мне нужно добавить ссылку на библиотеку, которую я хочу использовать, прежде чем я смогу импортировать ее в приложение с ключевым словом using.

Если я не использую Visual Studio, я могу импортировать библиотеки без предварительной ссылки на них. На самом деле мой вопрос имеет две точки:

  • Почему C # не может просто импортировать библиотеки вручную в Visual Studio (он явно способен работать таким образом)?

  • Что делает добавление ссылки для проекта? Конечно, он может найти библиотеку или нет?

1 Ответ

6 голосов
/ 20 апреля 2011

Если вы посмотрите в тот же каталог, что и csc.exe, вы найдете файл с именем csc.rsp. Это список всех ссылок, которые автоматически добавляются автоматически Компилятору C # все еще нужно знать, что искать, но у него большой список по умолчанию.

Если вы используете флаг /noconfig, вы увидите то же поведение, что и в Visual Studio - каждая ссылка должна быть указана явно.

Что касается добавления ссылки в проект: он говорит компилятору C # использовать эту библиотеку. Это все. Обратите внимание, что директивы using относятся к пространствам имен , а не к сборкам . Их часто называют одинаковыми, но это совершенно разные понятия. Директива using не"импортирует" библиотеку - она ​​просто указывает компилятору C # искать элементы в этом пространстве имен при разрешении имен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...