Mam następujący scenariusz:Błąd w dynamicznie obciążonych formantów użytkownika, które odwołują się inne kontrolki w różnych katalogach
Moja struktura katalogów jest:
- ./Pages/Page.aspx
- ./RedControls /RedControl.ascx
- ./BlueControls/BlueControl.ascx
Page.aspx.cs dynamicznie tworzy RedControl:
RedControls_RedControl C = (RedControls_RedControl)Page.LoadControl("~/RedControls/RedControl.ascx");
RedControl.ascx wykorzystuje BlueControl:
<uc:BlueControl runat="server" ID="ctrControl" />
Działa to doskonale w trybie rozwoju, jednak gdy wdrożyć go uzyskać:
typ Wyjątek - HttpParseException - Podstawa klasa zawiera pole "ctrControl", ale jego typ (BlueControls_BlueControl) nie jest zgodny z typem kontrolki (ASP.BlueControls_BlueControl_ascx).
Jeśli przeniesię RedControl i BlueControl do tego samego katalogu, to działa prawidłowo po wdrożeniu.
Jak mogę to uruchomić, bez konieczności przenoszenia plików do jednego katalogu (mamy za dużo takich przypadków).
Każdy wgląd byłby bardzo doceniony.
Czy są prawdopodobnie wdrożone stare wersje plików ASCX lub DLL? Fakt, że mówi, że typ nie jest zgodny, oznacza dla mnie, że ładuje typ z nieoczekiwanego źródła. – Jacob
Nie, nie ma wdrożonych starszych wersji. Świeża instalacja. – Jack
czy próbowałeś używać ".." zamiast "~" takich jak "LoadControl (" ../ RedControls/RedControl.ascx "); – Akhil