Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Info su gridview

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    32

    Info su gridview

    Salve a tutti,

    ho questo dubbio:

    se io abilito la suddivisione in pagine in un gridview (allowsorting=true )
    mi carica tutti i records comunque del sqldatasource e visualizzo la pagina selezionata oppure mi restituisce solo i records del sqldatasource della pagina selezionata diventando così + veloce?

    grazie
    eroslb

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    si i record vengono caricati comunque tutti,
    e quindi vengono presi quelli dell' intervallo. lo puoi verificare facilmente con il profiler... per fare il paging "smart", devi modificare la query di base, ad esempio mettendoci un select top (@totalRecord)

    dopo di che associ a totalRecord il valore (indicePagina+1) * PageSize
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    32
    ciao stefanomnn,

    grazie x la risp.
    porta pazienza ma non sono tanto pratico con asp.net...

    cosa intendi per "select top (@totalRecord)"
    potresti farmi un piccolo esempio..

    ancora
    grazie
    eroslb

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    ke database usi?
    cmq top e' una clausola di sql server che ti permette di prendere non piu di TOT dati!
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    32
    uso oracle,

    se intendi il numero di record che restituisce la query in oracle c'è "count(*)" .
    riesci a rifarmi l'esempio?

    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    scusami il ritardo mi ero dimenticato!
    ecco cme fare il paging in oracle in modo efficiente

    select *
    from ( select a.*, rownum rnum
    from ( YOUR_QUERY_GOES_HERE -- including the order by ) a
    where rownum <= MAX_ROWS )
    where rnum >= MIN_ROWS

    in pratica devi modificare la query in modo da prendere gli indici della prima e ultima riga da mostrare (partendo da 1).

    nota che la query originale rimane alterata, quindi ti consiglio di creare una routine che prende la query originale e gli indici e modifica opportunamente il Command.

    Ciao!
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    32
    oh molto gentile...meglio tardi che mai...


    Ti ringrazio molte e mi sei stato di grande aiuto....
    Ciao
    Eroslb

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.