Как мне получить пустой проект для компиляции как DLL? - PullRequest
0 голосов
/ 20 февраля 2012

Я создал новый VS "пустой" проект, и в нем сделал класс.Я решил попробовать это как библиотеку, зашел в свойства и установил тип вывода для библиотеки классов.Он компилируется в dll, хотя, когда я добавляю его как ссылку на другой проект, при вводе слова «using ...» моя новая библиотека там не появляется.Если я создаю новый проект библиотеки, после моего класса там, скомпилировать его в DLL, то он работает нормально.Итак, я хочу знать, какие настройки мне нужно изменить в пустом проекте, чтобы он действовал как dll?

1 Ответ

5 голосов
/ 20 февраля 2012

using директивы о пространствах имен , а не сборках .

Если ваша библиотека пуста, она ничего не вносит в пространство имен, поэтому директива usingничего не найдет.

Очень важно понимать разницу между пространством имен и сборкой - у вас может быть библиотека Foo.dll, которая содержит только Bar.Xyz.Вы бы добавили ссылку в своем проекте к Foo.dll, но директиву using для Bar.

В качестве более конкретного примера, класс Enumerable в System.Linqnamespace происходит от System.Core.dll - но вы все равно добавляете директиву using для System.Linq, а не System.Core.Действительно, если вы попытаетесь добавить директиву using для System.Core, вы получите ошибку - потому что это пространство имен не существует.(Пространство имен фактически не существует, если в нем нет членов.)

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