Avatar billede stephanryer Nybegynder
19. december 2005 - 15:21 Der er 12 kommentarer og
1 løsning

Dynamisk inkludering af fil.

Jeg har et problem med at jeg ikke kan inkludere flere filer hvor variabler med samme navn er oprettet. Jeg har prøvet med if-sætninger og en switch men intet af det virker. Er der en smart måde at inkludere filer på dynamisk så man ikke får problemer med variabler med samme navn på forskellige sider?

Min switch ser således ud:

<% switch((String)Session["side"]){
    case "side1.aspx": %> <!-- #include file="paatour_main.aspx" --> <% break;
    case "side2.aspx": %> <!-- #include file="side2.aspx" --> <% break;
    case "side3.aspx": %> <!-- #include file="side3.aspx" --> <% break;
    } %>
Avatar billede burningice Nybegynder
19. december 2005 - 15:30 #1
er du sikker på du ikke er havnet i den forkerte kategori?

lav dine sideX.aspx om til sideX.ascx og gør sådan her istedet:

void Page_Load(object sender, EventArgs e) {
  string side = ((string)Session["side"];

    enPlaceHolder.Controls.Add(LoadControl(side));
}
Avatar billede stephanryer Nybegynder
19. december 2005 - 15:31 #2
hvorfor skulle jeg være i den forkerte kategori??
Avatar billede dr_chaos Nybegynder
19. december 2005 - 15:33 #3
du er i den rigtige kategori.
da det drejer sig om asp.net.
Men ellers er burningice's løsning den rigtige.
I ASP.Net bruger man ikke include file.
Avatar billede stephanryer Nybegynder
19. december 2005 - 15:34 #4
oki, well jeg kunne godt tænke mig et simpelt eksempel da jeg er newbie i user controls.
Avatar billede burningice Nybegynder
19. december 2005 - 15:35 #5
fordi at din løsning er baseret på en asp tankegang :)
Avatar billede stephanryer Nybegynder
19. december 2005 - 15:36 #6
hehe well vil lave det efter asp.net-standarderne, så hvis jeg er forkert på den - please correct me :)

Men et simpelt eksempel på en usercontrol? så simpel som overhovedet muligt helst.
Avatar billede burningice Nybegynder
19. december 2005 - 15:41 #7
omdøb din side til ascx istedet, mere er der ikke i det.

Hvis du har en codebehind skal den arve fra UserControl istedet for Page, og evt. direktiver på din side skal hedde

<%@ Control %>
Avatar billede stephanryer Nybegynder
19. december 2005 - 15:57 #8
Well hvis nu jeg før brugte dette:

<!-- #include file="login.aspx" -->

og omdøber denne til login.ascx. Hvordan "includer" jeg den så på min side for at det er i asp.net-ånden?
Avatar billede burningice Nybegynder
19. december 2005 - 18:21 #9
du laver øverst på siden et tagprefix der repræsenterer din usercontrol, og så gør du dette der hvor den skal være:

<tag:tag id="login" runat="server" />

der er en artikkel om det her: http://www.dotnetjunkies.com/how%20to/FC2D9FFD-E100-4B7A-9C3C-70937D2BE9BD.dcik
Avatar billede stephanryer Nybegynder
01. maj 2006 - 20:04 #10
Dette er et gammel spørgsmål. Jeg løste det ved at benytte usercontrols. Læg et svar alle der lyster, så bliver de fordelt :)
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 07:54 #11
det er vidst kun burningice som skal have points.
Hvis han ikke svarer tager du dem bare selv
Avatar billede stephanryer Nybegynder
02. maj 2006 - 09:24 #12
yes, han får lige lidt mere tid.
Avatar billede burningice Nybegynder
05. juli 2006 - 20:26 #13
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester