Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    DataReader o DataSet questo è il problema!

    Ciao, Vi chiedo un semplice suggerimento:

    essendo abituato a utilizzare ASP per realizzare pagine dinamiche, passando a ASP.NET mi sono dovuto confrontare con il nuovo modo di interrogare il database....
    Ho letto che è preferibile usare i datareader per non appesantire troppo i client.

    Chi mi dice cosa è preferibile usare tra i due? Grazie

  2. #2
    LKDR
    Guest
    ti dico quel poco che so.
    (OSS: non garantisco per eventuali baggianate )

    I datareader sono usati per la modalita' "connessa" cioe' per tuttu il tempo di esecuzione(lettura dati) la connessione rimane aperta: son ottimi per certe soluzioni associati all'oggetto oleDbCommand, ma un po limitati(non ne puoi tenere aperti 2 contemporaneamente su una stessa connessione)

    I DataSet son qualcosa di mostruoso, son dei veri e propri "contenitori" di qualunque cosa sia un database(contengono tabelle, relazioni tra di loro), e funzionano in modalita' disconnessa, cioe' lavorano al di fuori della connessione del database(tranne ovviamente la lettura dei dati all'inizio) e poi li puoi modificare/eliminare o fare quello che vuoi senza toccare il db: ovviamente poi se vuoi rendere "permanenti le modifiche" devi in un qualche modo salvare i dati.

    Per le applicazioni win standard il dataset e' migliore nella maggior parte dei casi, per ASP.net e' quasi assurdo usarlo, visto che ti dovresti memorizzarlo tra i vari postback delle pagine(e per internet non e' il max) e cmq non puoi sfruttare al max le enormi potenzialita'..

    In asp.net con i DataReader(almeno fino a dove ho avuto modo di usarli) ci fai tutto.. tranne (come ho detto) tenerle aperti 2, in quel caso devi usare un dataSet con dentro 2 datatable...

    bye

  3. #3

    che dire....

    ...semplicemente grazie, sei stato gentilissimo!

    Il problema che mi ponevo era proprio quello: in effetti usare i dataset per le solite pagine di visualizzazione di record ecc. mi sembrava esagerato.

    Le potenzialità cmq dei dataset sono davvero enormi. Ho letto parecchio a proposito ma mi rimane una domanda:
    - una volta che ho creato il dataset da una connessione ad un db remoto, questo viene tenuto in memoria o salvato in un file xml? Se chiudo la pagina di IE perdo il dataset o lo trovo salvato sul mio hard disk?
    ... non so se sono stato chiaro....

  4. #4
    LKDR
    Guest
    Ovviamente stai parlando di asp.net no?

    Il dataset alla creazione viene create sulla memoria del Server...
    e ovviamente scompare al termine del processo della pagina(dunque dura di norma qualche frazione di secondo )
    Per farlo "rimanere" devi per forza intervenire tu.. in qualsiasi modo tu voglia... ovviamente dovrai tenere presente del numero di utenti che useranno tale metodo... dunque memorizzarlo in file xml mi sembra fuori luogo. Un modo potrebbe essere usare le var di sessione, ma consumano una quantita' enorme di memoria sul server visto che devono rimanere almeno una 10ina di minuti attive...
    Sul tuo HD non le puoi salvare da asp.net (non so se puoi con i cookie ... ma non avrebbe senso visto la loro ridotta capacita'..) dovresti creare il file su server e scaricartelo...oppure usare una applicazione windows standard che te lo fa...

  5. #5

    ok

    Grazie, molto chiaro

  6. #6
    Originariamente inviato da LKDR
    parte dei casi, per ASP.net e' quasi assurdo usarlo


    io uso i datareader solo quando devo riportare dati in sola lettura.
    il piu' delle volte uso dataset. Sviluppo la maggior parte delle volte applicazioni molto complesse.. e il dataset mi facilita moltissimo le cose.

  7. #7
    LKDR
    Guest
    giustissimo, anzi, come mi pare di aver gia' detto, in alcuni casi e' impossibile farne a meno

    ma sicuramente c'e' tanta gente che lo sa meglio di me

    bye

  8. #8

  9. #9

    Beh visto che ci sono....

    Dato che siete così gentili ne approfitto!!!!

    ...avete qualche link interessante che spiega bene l'uso dei datareader o dei dataset? Bye!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.