2009-03-27 5 views
0

У меня есть страница aspx в приложении ASP.NET 2.0 с использованием нескольких объектов ObjectDataSources. Все они привязаны к одному классу так:
ObjectDataSourceControl не удается найти Тип в импортированном пространстве имен


<asp:ObjectDataSource ID="TitleDataSource" runat="server" OnSelecting="TitleDataSource_Selecting" SelectMethod="GetTitle" TypeName="DropDownDataSource"></asp:ObjectDataSource>

Это работает нормально. Тогда я сделал два изменения

  1. покрутил DropDownDataSource из каталога app_code в отдельную сборку
  2. изменил пространство имен класса был com.companyname.ie, теперь com.companyname.ie.appname

Теперь я получаю «Тип Указано в Не удалось найти имя типа «TitleDataSource», когда я попал на страницу.

Я могу исправить это, указав полное имя класса в TypeName. Но добавление директивы <% @import с тем же пространством имен не разрешает ошибку.

Я также пытался перевести свой код обратно в app_code безрезультатно.

Intellisense выбирает тип без меня, определяя пространство имен.

Его не проблема, а очень раздражающая. Какие-либо предложения?

ответ

1

Правильно указав полное имя. В противном случае время выполнения будет отображаться только в текущей сборке.

+0

Jakob, спасибо за ответ, но как отмечено в моем вопросе: я попытался перевести свой код обратно в app_code (где он работал ранее), и он по-прежнему не получает безоговорочное имя. Я считаю, что я устранил Ассамблею как возможный источник проблемы. Разве есть кеширование? – TygerKrash

+0

Возможно, это связано с тем, что вы изменили пространство имен, так что оно отличается от пространства имен по умолчанию вашего веб-сайта. Вы можете попробовать использовать конструктор для ObjectDataSource (щелкнув небольшую стрелку, кроме ObjectDataSource в дизайнере). –

+0

Я верю, что Мастер покажет вам список доступных типов. –