Ошибка в динамически загруженных пользовательских элементах управления, которые ссылаются на другие элементы управления в разных каталогах

У меня следующий сценарий:

Моя структура каталогов:

  • ./Pages/Page.aspx
  • ./RedControls/RedControl.ascx
  • ./BlueControls/BlueControl.ascx

Page.aspx.cs динамически создает RedControl:

RedControls_RedControl C = (RedControls_RedControl)Page.LoadControl("~/RedControls/RedControl.ascx");

RedControl. ascx использует BlueControl:

<uc:BlueControl runat="server" ID="ctrControl" />

Это отлично работает в режиме разработки, однако когда я разворачиваю его, я получаю:

Тип исключения - HttpParseException - Базовый класс включает поле 'ctrControl', но его тип (BlueControls_BlueControl) не совместим с типом элемента управления (ASP.BlueControls_BlueControl_ascx).

Если я перемещаю RedControl и BlueControl в один каталог, то при развертывании все работает нормально.

Как я могу заставить это работать без необходимости перемещать файлы в один каталог (у нас слишком много таких случаев).

Любое понимание будет высоко оценено.

5
задан Jack 2 February 2012 в 02:39
поделиться