2013-09-26 5 views
0

Я пытаюсь добавить предварительно скомпилированную dll в свой проект веб-формы. Dll - это предварительно скомпилированный пользовательский элемент управления (а не серверный контроль). Когда я тестировал пользовательский контроль во время разработки на веб-форме в этом проекте, все работало нормально. Затем я удалил веб-форму, чтобы остался только пользовательский элемент управления и опубликовал его в файл. Затем, в проекте, в котором я хочу использовать это, я добавил ссылку на DLL и убедился, что есть копия в папке bin для используемого проекта.asp.net добавление пользовательского элемента управления на страницу

Я не уверен, но я думаю, что моя проблема понимания именно то, что происходит в web.config (или регистрации тега), это то, что у меня есть для тега Регистрация:

<add assembly="CustomStatusNavigator" namespace="CustomStatusNavigator" tagPrefix="Custom" /> 

.. ., где «CustomStatusNavigator является как название проекта пользовательского элемента управления и пространство имен, содержащее мой .cs код.

ошибка я получаю

The type or namespace name 'CustomStatusNavigator' does not exist in the namespace 'CustomStatusNavigator' (are you missing an assembly reference?) 

Я делаю что-то бла Неправильно? Это просто миф о том, что пользовательский элемент управления USER можно преобразовать в DLL и использовать как пользовательский элемент управления? Благодарен за любую помощь/указатели, хорошие ссылки. Из этого я выбрал googled.

ответ

1

См. Раздел Пользовательские элементы управления различны, а элементы управления пользователя отличаются.

Когда мы создаем пользовательский элемент управления, область действия ограничена только этим приложением. Предположим, мы создаем один пользовательский элемент управления под названием «Test.ascx». Его можно использовать во всем приложении, зарегистрировавшись чуть ниже директивы страницы. Помните. Он не будет создавать какой-либо DLL-файл, он должен быть только .ascx.

В случае пользовательского контроля вы можете создать свой собственный элемент управления с помощью доступных элементов управления сервером. вы можете скомпилировать их, и в этот момент файл dll будет создан для него.

Этот файл dll может быть полезен и в других проектах, но для этого вам нужно добавить ссылку на любой новый проект.

После добавления ссылки на него вы можете увидеть его под инструментами и можете просто перетаскивать его, когда захотите его использовать.

+0

Спасибо, сиддеш. Я поговорил с программистом об этом и ушел с пониманием того, что пользовательский элемент управления должен иметь файл ascx где-то в проекте, к которому он добавляется, даже если он был предварительно скомпилирован и ссылка на dll указана. Решил пройти маршрут управления сервером. Это более крутая кривая обучения, но она идет очень хорошо и, безусловно, стоит усилий. Цените помощь. – deadEddie

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