Popolare gridview da altra pagina asp

sabato 17 maggio 2014 - 15.19
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows XP  |  Visual Studio 2008  |  SQL Server 2008 R2

basicdany Profilo | Expert

buongiorno a tutti, avrei bisogno di una mano a un problema:

in pagina masterpage ho dei campi di ricerca, e in base hai campi che mi compila l'utente devo popolare un gridview che si trova in altra pagine.
come passo la stringa di ricerca al dagrid che si trova in altra pagina??

grazie aspetto gentile risposta.



alx_81 Profilo | Guru

>buongiorno a tutti,
ciao

>in pagina masterpage ho dei campi di ricerca, e in base hai campi
>che mi compila l'utente devo popolare un gridview che si trova in altra pagine.
è proprio sulla master oppure è su uno user control (meglio lo user control così decidi dome mettere quell'area di codice)?

>come passo la stringa di ricerca al dagrid che si trova in altra pagina??
al verificarsi dell'evento di ricerca avrai dei dati nei campi di ricerca che passi no? Controlli che hai definito come <asp:Qualcosa runat="server" [...]> con ID="id".. L'id lo vedi quando premi il bottone e quello ti serve per accedere al campo e ad i suoi valori..
Hai tutto nella fase definita come postback.
Con quei valori puoi attuare varie tecniche: http://msdn.microsoft.com/en-us/library/vstudio/6c3yckfw(v=vs.100).aspx
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://blogs.dotnethell.it/suxstellino
http://suxstellino.wordpress.com
http://mvp.microsoft.com/profiles/Alessandro.Alpi

basicdany Profilo | Expert

ciao alex grazie per la risposta, quindi utilizzo questa esempio per passare dei valori ad altra pagina
al click su pagina masterpage:

Response.Redirect("SchedaImmobile.aspx?IdImmobile=" & AppoId & "&idagenzia=" & txtCodiceAgenzia.Text, False)
o variabili Session("prova") ="pippo"

pensavo che esistevano altri modi diretti.

grazie tanto

alx_81 Profilo | Guru

>Response.Redirect("SchedaImmobile.aspx?IdImmobile=" & AppoId
>& "&idagenzia=" & txtCodiceAgenzia.Text, False)
>o variabili Session("prova") ="pippo"
>pensavo che esistevano altri modi diretti.
puoi usare il querystring, puoi passare i dati sfruttando l'http post, puoi salvare su sessione, su cookie, su database, su disco.. puoi fare tutte queste cose.
Devi capire quale è meglio per te. Sono dati che ti servono persistenti? Ci stanno su un querystring? Vuoi mostrarli durante il passaggio dati o nasconderli? Sono troppo grandi per sporcare la memoria?
In base alle tue considerazioni dovrai scegliere la via migliore.
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://blogs.dotnethell.it/suxstellino
http://suxstellino.wordpress.com
http://mvp.microsoft.com/profiles/Alessandro.Alpi

basicdany Profilo | Expert

Devo passare una query abbastanza lunga da eseguire su database
se e possibile non farla vedere.

grazie alex

alx_81 Profilo | Guru

>Devo passare una query abbastanza lunga da eseguire su database
> se e possibile non farla vedere.
mmmmmh... non è meglio passare solo i parametri e comporre la query nella pagina di destinazione?
così usi il querystring per i params e poi la select la crei nella pagina lato server..

Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://blogs.dotnethell.it/suxstellino
http://suxstellino.wordpress.com
http://mvp.microsoft.com/profiles/Alessandro.Alpi

basicdany Profilo | Expert

Piutroppo la query viene fuori da una scelta di 20 controlli
tra caselle di testo e check.
Nel caso passo query si puo nascondere???

alx_81 Profilo | Guru

>Piutroppo la query viene fuori da una scelta di 20 controlli tra caselle di testo e check.
visto che significherebbe rifare le logiche nella pagina di destinazione passando i risultati dei controlli, preferisci quindi passarla dal chiamante per intero..

>Nel caso passo query si puo nascondere???
Non sono amante delle query fatte dinamicamente, perchè provocano non pochi problemi, sia di vulnerabilità sia di gestione futura delle applicazioni (cerca di usare magari entity framework ed evitare il sql dinamico, evitando in OGNI MODO concatenazioni di stringhe per proteggerti). Quindi la mia potrebbe essere una risposta non troppo "allenata" visto che non seguo questa tecnica. Mi verrebbero due/tre cose:

1) semplicistica ed illusoria, fare un campo di testo hidden e scrivere la query in esso per poi passarla in http POST. Ovvio che basta un "tasto destro --> View page source" per capire la query
2) la 1) ma salvando la query crittografata, decrittografandola nella pagina successiva
3) metterla in sessione e poi leggerla direttamente nella pagina

del resto non saprei dirti altro..
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://blogs.dotnethell.it/suxstellino
http://suxstellino.wordpress.com
http://mvp.microsoft.com/profiles/Alessandro.Alpi

basicdany Profilo | Expert

Uso la variabie session.come tempo fa mi hai spiegato
di usare.
ho solo paura che puo creare problemi visto che molto lunga

grazie tanto

alx_81 Profilo | Guru

>ho solo paura che puo creare problemi visto che molto lunga
no problemi non ne crea, sta in memory e prima che la riempi con una stringa di qualche migliaio di caratteri ne passa
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://blogs.dotnethell.it/suxstellino
http://suxstellino.wordpress.com
http://mvp.microsoft.com/profiles/Alessandro.Alpi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5