Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    passare il risultato di una query SQL a un altra pagina

    Ciao a tutti,
    forse l'oggetto è un po contorto...vi spiego melgio cosa ho fatto e cossa voglio fare...
    ho il risultato di una query sql che immetto in un datareader...fin qui tutto bene
    vorrei passare il "risultato" di questa query ad un altra pagina web in modo da poter visualizzarne i risultati...ovvimanete evitando di ricostruire query e datareader pure in quella pagina nuova, per evitare di far 2 volte la stessa cosa...

    una cosa del tipo

    pagina1:

    esecuzione sql
    immisisone nel datareader
    if datareader.hasrows then...vai alla pagina 2 (e passagli i risultati cosi che li visualizzo li)

    Spero di essermi spiegato (scrivo da cani)

    Saluti

  2. #2
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    Mettere il datareader in una variabile Session ?

  3. #3
    infatti quello volevo fare ma mi han detto che NON SI PUO....lo si puo fare solo con una datatable...ma nn son molto capace a gestire una datatable....

  4. #4
    ciao,
    il mio parere è che sia sbagliato fare una query in una pagina e mostrare i dati in un'altra.

    Non puoi fare tutto in un'unica pagina?

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Alla seconda pagina gli passi l'istruzione sql (magari codificata in formato Base64). Poi è la seconda pagina che la usa. La soluzione che hai proposto è, secondo me, non percorribile.

    Pietro

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Ci sono tante soluzioni, ma come gli altri mi chiedo perche' vuoi fare una cosa del genere.

    [!--
    Comunque, un piccolo OT che puo' esserti utile: nella applicazioni ASP.Net (quindi Intranet/Internet) il Datareader è consigliato perchè è piu' performante del Dataset e del suo Datatable; è meno complesso e quindi meno potente, ma per visualizzare dati per il web è altamente consigliato in tutti i testi che affrontano l'argomento 'performance & tuning'.
    Inoltre il Datareader è un oggetto connesso, cioe' con la spina attaccata al DB fin quando lo usi. Il Dataset o Datatable invece prendono i dati, staccano la spina dal DB e lavorano con la memoria del server. Quindi sono considerati piu' "parassiti" nei confronti del computer che li ospita
    --]

    La soluzione ottimale comunque è mettere la query in sessione ed utilizzarla nella pagina che deve visualizzarne i risultati. Cosi' fai l'operazione soltanto una volta

  7. #7
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    Originariamente inviato da djciko
    Ci sono tante soluzioni, ma come gli altri mi chiedo perche' vuoi fare una cosa del genere.

    [!--
    Comunque, un piccolo OT che puo' esserti utile: nella applicazioni ASP.Net (quindi Intranet/Internet) il Datareader è consigliato perchè è piu' performante del Dataset e del suo Datatable; è meno complesso e quindi meno potente, ma per visualizzare dati per il web è altamente consigliato in tutti i testi che affrontano l'argomento 'performance & tuning'.
    Inoltre il Datareader è un oggetto connesso, cioe' con la spina attaccata al DB fin quando lo usi. Il Dataset o Datatable invece prendono i dati, staccano la spina dal DB e lavorano con la memoria del server. Quindi sono considerati piu' "parassiti" nei confronti del computer che li ospita
    --]

    La soluzione ottimale comunque è mettere la query in sessione ed utilizzarla nella pagina che deve visualizzarne i risultati. Cosi' fai l'operazione soltanto una volta
    Mettendo la query in sessione....se poi deve prendere dei parametri dalla pagina chiamante ?
    Deve sempre leggere i valori dalla pagina chiamante.

  8. #8
    Interessante...quasi tutti mi dite la stessa cosa..perche vuoi fare questa cosa in 2 pagine...bene vi rispondo, premettendo che CI SONO RIUSCITO (poi vi dico come).

    Allora io volgio smeplicemnte far apparire a video una "finestra di dettalgio coi risultati"...nn mi pare cosi astruso...faccio la ricerca di un appartmaento sull aprima pagina...se trovo la corrispondenza via slq....voila' faccio uscire a video una nuova "finestra" (sarebbe la pagina2.aspx) con i dettalgi del record prescelto!!! E' cosi strano???
    Lo dico nn per sfottere,ma perceh NON SIETE I SOLI a dirmi "fai tutto in una pagina"....mi piacerebbe ma non ne sono capace..o melgio nn so se esista un modo x far apparire a video una "form web" che nn sia un apagina aspx....boh...illuminatemi...

    Cmq ho risolto cosi

    1)effettuo la query
    2)riempio un reader coi risultati
    3)creo un datatable
    4)riempio il dt col reader
    5)"infilio" il datatable x intero in una varibile session
    6)nella pagina 2 creo una datatable
    7)assegno la variabile session nel nuovo datatable della pgina 2..che diventa operativo

    ora nella pagina 2 ho la mia bella datatable e posso farci cio che volgio...problema risolto....

    Se avete soluzioni x fare la stessa cosa in una pagina sola...BEN VENGANO!!!

    Cmq grazie mi avete messo sulla gisuta via come sempre...BANZAI!!!!!!

    P.S. DIMENTICAVO IMPORTANTE!! : ho usato una datatable perche pare sia appurato che NON SI POSSA METTERE UN DATAREADER in una varibile session..la datatable si...proprio forse perche nn e' connessa....comunque ho aggirato il problema XD

  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Allora, cerco di risponderti. Prima di tutto dico che esprimo la mia idea, NON LA SOLUZIONE MIGLIORE, perchè una data operazione si può fare in più modi e non è detto che ci sia "la migliore" ma può darsi benissimo che siano equivalenti.
    Detto questo, quello che tu fai, io lo faccio abbastanza spesso, ma in modo diverso.

    Ossia, richiamo la seconda pagina passandole lo stretto necessario per eseguire l'operazione richiesta. Se, nella pagina A, ho una griglia con molti valori e voglio conoscere il dettaglio di una riga, alla pagina B passo solo l'identificativo del record, e glielo passo via post, usando il meno possibile le session.
    ciao
    Pietro

  10. #10
    Originariamente inviato da danielsan27
    Allora io volgio smeplicemnte far apparire a video una "finestra di dettalgio coi risultati"
    cosa intendi per finestra? una nuova finestra Browser? o un popup della pagina HTML?
    Ti sconsiglio la prima ipotesi e proporrei la seconda.

    ...nn mi pare cosi astruso...faccio la ricerca di un appartmaento sull aprima pagina...se trovo la corrispondenza via slq....voila' faccio uscire a video una nuova "finestra" (sarebbe la pagina2.aspx) con i dettalgi del record prescelto!!! E' cosi strano???
    si, un po' strano, anche insolito direi.
    se devi fare una ricerca, falla pure nella prima pagina, e fai vedere i risultati nella prima pagina (Perché aprire una seconda pagina per vedere i risultati di una ricerca fatta nella prima?????)
    A questo punto potrebbe essere quasi giusto aprire una popup per vedere eventualmente il dettaglio di ciò che hai trovato.
    Ma anche in questo caso non è conveniente passare tutto il record solo per visualizzarlo. Meglio passare solo l'id e richiedere i dati che vuoi far visualizzare.
    (se proprio devi passare tutti i dati, non usare la session piuttosto la cache)

    ....mi piacerebbe ma non ne sono capace..o melgio nn so se esista un modo x far apparire a video una "form web" che nn sia un apagina aspx....boh...illuminatemi...
    Siamo qui per questo, nessun problema.
    Si, esiste il modo di far apparire una form senza dover aprire una nuova pagina.
    Qui un esempio "canonico" per fare tutto in un unica pagina, migliorabile inserendo anche degli UpdatePanel


    Mentre utilizzando qualcosa di più avanzato (ajax) puoi fare anche cose più raffinate.
    Ecco quello che ti ci vorrebbe per fare una PopUp
    Ecco quello che ti ci vuole per popolare al volo la PopUp

    In questi esempi ho utilizzato la lilbreria AjaxControlToolkit, ma puoi fare le stesse identiche cose con JQuery, ma ci vuole un po' di pratica con javascript.


    ora nella pagina 2 ho la mia bella datatable e posso farci cio che volgio...problema risolto....
    non ho ben capito se nella pagina 2 fai vedere il risultato della ricerca (elenco appartamenti), o il dettaglio di un unico appartamento
    Fosse il primo caso, come ho già detto prima, è sbagliato (solo un parere)


    comunque ho aggirato il problema XD
    aggirare i problemi nel 98% dei casi equivale a creare altri problemi, magari più grossi.
    Meglio risolvere il problema nella maniera migliore, piuttosto che aggirarlo.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.