Datagrid con 20 dropdownlist per records.....

martedì 04 maggio 2004 - 17.42

d@dora Profilo | Senior Member

ciao ragazzi sono qui con l'ennesima richiesta:
ho un datagrid con 20 dropdownlist per records, ora se ad ogni records vado a leggere n volte le stesse tabelle per riempire le combo , rischio di aspettare parecchio prima che mi visualizzi la pagine, quindi vorrei creare un datareader che riempo una solo volta e collego quante volte serve ai vari combo, pero' dopo il primo binding, mi chiude la connessione e ciccia.
Come posso fare ???

Ciao e grazie per la comprensione !!!!

Brainkiller Profilo | Guru

E' semplice. Usa un DataSet.
Il DataSet è una rappresentazione in memoria (Ram) del database, quindi tabelle, records, relazioni ecc.
Solitamente si usa un DataAdapter a cui si passa una query, poi si riempie un DataSet usando il metodo .Fill() a questo punto puoi anche chiudere la connessione tanto i dati sono nel DataSet.
E' per questo che si chiama lavoro in modalità disconnessa.
Dopo con il DataSet puoi fare quello che vuoi, aggiungere records, eliminarne, bindarlo n volte, ecc.
Naturalmente vien da sè che più la query estrapola dati, più questi andranno nel DataSet più sarà la memoria Ram che occupi.
Però fai una connessione una volta, una sola query, e poi lo usi quante volte vuoi.

ciao
david

Trinità Profilo | Junior Member

oltre a questo puoi ottimizzare ancora mettendo il dataset in cache. Controlla bene però le modalità in cui lo fai e come fai scadere la cache, al fine di avere sempre dati aggiornati ma senza "sforzo"
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5