146 messaggi dal 29 luglio 2010
Ciao, ho un quesito da porvi:
in pratica devo importare una pagina aspx dentro un altra pagina usando la import che cambia in base ad un valore che mi passo con la querystring con questo codice:

<!--#include file="import/<% Request.QueryString('codice') %>.aspx" -->

Il problema è che mi da errore. Dove sbaglio? Al posto di "codice" cosa ci devo mettere?
Grazie dell'aiuto
5.610 messaggi dal 09 febbraio 2002
Contributi
ciao, non è possibile utilizzare dei parametri nella direttiva include. Non era possibile neanche in asp classico perché questa è una direttiva per il preprocessore: viene analizzata ancora prima che la pagina inizi il suo ciclo di vita e perciò la collezione Request.QueryString non può essere utilizzata lì.

L'alternativa che più si avvicina a quello è il metodo Server.Execute, a cui puoi passare il percorso di pagina da eseguire.

Qui trovi un esempio di codice:
http://www.asp101.com/samples/utils/source.aspx?file=server_execute.aspx

Tuttavia, dovresti abbandonare questo metodo, che è una reminiscenza dell'asp classico, in favore degli user controls.
Puoi caricare uno user control dinamicamente, grazie al metodo Page.LoadControl. Qui c'è un esempio:
http://www.aspitalia.com/script/481/Aggiungere-User-Control-LoadControl.aspx
Uno user control si va ad inserire nel ciclo di vita della pagina principale ed è facile scambiare dati con esso.

ciao,
Modificato da BrightSoul il 24 novembre 2011 23.30 -

- So what you're saying is, if we get in trouble, there's no one to help us out?
- I'm afraid not.
- Fantastic!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
Community
Ultimi messaggi
UTENTI ONLINE
In primo piano

I più letti di oggi

Media
In evidenza
MISC