[ radicr @ 25.07.2004. 20:39 ] @
Pozdrav Malo pocinjem da radim C# i ucim ADO.NET Hocu da napravim neki DataGrid (windows.Forms) koji bi mogao da radi "pametno ucitavanje" u smislu, da kad imam npr. 12 prikazanih vrsta, da iz baze ucitam samo 12 i onda kad korisnik skroluje da ucitavam naredni 1 ili vise rekorda u zavisnosti od navigacije. Iz razloga toga sto mi xxxDataAdapter.Fill(dataSet) radi previse sporo, posto on fetchuje sve podatke iz tabele, mislio sam da cu moci iskoristiti xxxDataReader za tako nesto ovako: while (DataReader.Read() && (rowsAdded < visibleRows)) { AddRow(); rowsAdded++; } i onda kad skrolne uradim jos jedan DataReader.Read() Ali koliko sam procitao xxxDataReader mora da uradi Close() jer je inace xxxConnection u stanju Fetching, i ne mogu da radim BeginTransaction() i update u bazu posto stanje mora biti ConnectionState.Open , odnosno to mi se desava kad radim sa OleDbDataReader i OleDbDataConnection. A kad uradim DataReader.Close() onda ne mogu raditi postepeni fetching vec moram ucitati sve odjednom sto daje bar neko ubrzanje u odnosu na DataAdapter.Fill(dataSet) ali ipak ne zadovoljava. Je li ima neko rjesenje za ovo? Hvala, Radovan |