2015-04-26 5 views
1

У меня есть назначение о ООП в C#, которое включает в себя создание базового класса (в виде библиотеки классов) и производного класса (в качестве другой библиотеки классов). Я понимаю, что для того, чтобы эти функции функционировали должным образом, мне нужно ссылаться на базовый класс .dll в производном классе. Однако я не могу сгенерировать этот .dll-файл для базового класса, так как получаю сообщение об ошибке «Невозможно запустить проект с типом Output библиотеки классов». В моем учебнике говорится, что исправление для этого заключается в том, чтобы щелкнуть «Build Solution» в VS 2013, что должно сделать его выполнимым. Я сделал это, и все же все еще не функционирует. Где я иду не так?Невозможно ссылаться на одну библиотеку классов от другого

+0

Ошибка говорит вам, что вы не можете * выполнить * библиотеку классов. Который, ну, вы не можете. Это не приложение, а просто библиотека кода, которая будет * использоваться * приложением. Все, что вам нужно сделать, это добавить ссылку на проект из проекта производного класса в ваш базовый класс. – David

+0

Вы должны ссылаться на проект, который содержит базовый класс в проекте, который содержит производный класс. Если обе библиотеки классов находятся в одном решении, щелкните правой кнопкой мыши «Добавить ссылку» и добавьте библиотеку классов базового класса в библиотеку классов производного класса. –

+0

'.dll' - это не программа, которую вы можете запустить. Вам нужно будет добавить в проект новый проект, который будет генерировать исполняемое приложение. Самый простой способ - выбрать проект приложения консоли. Добавьте ссылки на оба класса libarires на этот проект и выберите проект как тот, который будет запущен. – Alex

ответ

2

«Проект с типом вывода из библиотеки классов не может быть запущена непосредственно»

Это означает, что вы пытаетесь перспективе проект, отмеченный как библиотека, а не только строить. Просто скомпилируйте этот проект, не пытаясь его запустить, и создайте еще один проект, который можно запустить (например, консольное приложение, приложение для форм win и т. Д.) И обратитесь к текущему решению из этого нового проекта.

В качестве альтернативы измените тип текущего проекта на тот, который выполняется.

+0

Правильно, я предположил, что именно так я собираюсь получить файл .dll для ссылки в другой библиотеке классов. Я еще не пытаюсь запустить проект, я просто хочу, чтобы DLL-файл был помещен в другую библиотеку классов. Это страница из учебника, который я использую: http://preview.tinyurl.com/l3nlypg –

+0

В сообщении об ошибке говорится, что вы пытаетесь запустить проект DLL. –

+0

Это потому, что мне не удалось найти файл .dll и подумал, что, создав/запустив проект, файл будет сгенерирован. Я нашел его сейчас. –

Смежные вопросы