Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Visualizzazione record a gruppi di 100
giovedì 03 maggio 2007 - 10.25
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
gio 3 mag 2007 - 10:25
Ciao a tutti,
il mio ambiente è composto da SharePoint Services 2003, ed utilizzo VisualStudio 2003.
Utilizzo delle WebPart per visualizzare dei recordestratti da un DB Oracle.
Il mio problema è che quando devo estrarre tanti dati (2 , 3000) per visualizzare la pagina ci metto una vita!
Non so se è colpa della query, del Render della Web Part...boh.... allora stavo pensando come era possivile visualizzare magari 100 record alla volta....qualcuno l'ha già fatto? sa darmi qualche dritta?
grazie!!
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
gio 3 mag 2007 - 10:32
>Ciao a tutti,
>il mio ambiente è composto da SharePoint Services 2003, ed utilizzo
>VisualStudio 2003.
>Utilizzo delle WebPart per visualizzare dei recordestratti da
>un DB Oracle.
>
>Il mio problema è che quando devo estrarre tanti dati (2 , 3000)
>per visualizzare la pagina ci metto una vita!
>
>Non so se è colpa della query, del Render della Web Part...boh....
>allora stavo pensando come era possivile visualizzare magari
>100 record alla volta....qualcuno l'ha già fatto? sa darmi qualche
>dritta?
>
>grazie!!
Che metodo usi per visualizzare i dati?
Sembra un problema che abbiamo avuto anche noi con la gestione dell'ado.net e dei Dataset.
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
gio 3 mag 2007 - 10:43
Guarda, eseguo una query e poi popolo un DataGrid.....
protected override void CreateChildControls()
{
mioDataGrid = new DataGrid();
mioDataGrid.AutoGenerateColumns=false;
mioDataGrid.Width=Unit.Percentage(100);
mioDataGrid.HeaderStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
mioDataGrid.HeaderStyle.Font.Name = "Verdana";
mioDataGrid.HeaderStyle.Font.Bold = true;
mioDataGrid.HeaderStyle.ForeColor = System.Drawing.Color.White;
mioDataGrid.HeaderStyle.BackColor = System.Drawing.Color.Blue;
mioDataGrid.AlternatingItemStyle.BackColor = System.Drawing.Color.FromName("#b0c4ff");
mioDataGrid.SelectedItemStyle.BackColor= System.Drawing.Color.Blue;
mioDataGrid.SelectedItemStyle.ForeColor = System.Drawing.Color.White;
//Add a button to the grid for selection
ButtonColumn objButtonColumn = new ButtonColumn();
objButtonColumn.Text="Seleziona";
objButtonColumn.CommandName="Select";
objButtonColumn.ItemStyle.Width = 70;
objButtonColumn.ItemStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
objButtonColumn.ItemStyle.Font.Name = "Verdana";
grdImansyItems.Columns.Add(objButtonColumn);
//Add data columns
firstObjColumn.DataField="CODCMP";
firstObjColumn.HeaderText="Codice Componente";
firstObjColumn.ItemStyle.Width = 100;
firstObjColumn.ItemStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
firstObjColumn.ItemStyle.Font.Name = "Verdana";
grdImansyItems.Columns.Add(firstObjColumn);
modObjColumn.DataField="MOD2";
modObjColumn.HeaderText="Indice Modifica";
modObjColumn.ItemStyle.Width = 50;
modObjColumn.ItemStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
modObjColumn.ItemStyle.Font.Name = "Verdana";
mioDataGrid.Columns.Add(modObjColumn);
.......
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
gio 3 mag 2007 - 10:48
Per popolare le righe usi un datasource?
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
gio 3 mag 2007 - 10:55
334_webpart.zip
guarda ti ho allegato un txt con dentro il codice della web part......per evitare di scrivterti cose inesatte......
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
gio 3 mag 2007 - 13:37
Purtroppo non ho il tempo di studiarmelo tutto, ma a da una rapida occhiata ho visto che usi i data adapter.
Quello che succede a grandi linee è:
1) Esegue la query
2) trasferisce tutti i dati dal Server Oracle al Server ASP.NET
3) Esegue la paginazione (se è attiva) ed i filtri
4) Invia l'html al client.
Il problema è nel punto 2 la quantità di dati che vengono trasferiti.
il Data Source non è ottimizzato per grandi quantità di dati. Per velocizzare dovresti usare un datareader e popolare un datasource custom. Perdi la gestione automatica della paginazione e dei filtri, ma non vedo altra scelta.
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
gio 3 mag 2007 - 13:42
Sei molto gentile.... non avresti un esempio da farmi vedere, cioè come usare un DataReader invece del DataSource?
Grazie!
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
gio 3 mag 2007 - 16:18
Qui trovi un esempio d'uso del datareader.
http://msdn2.microsoft.com/en-us/library/haa3afyz
(VS.80).aspx
devi crearti una datatable con le colonne che ti servono
nel loop del while(MyDatareader.read()) popoli la datatable
poi metti nella griglia setti come datasource il datatable che ti sei popolato.
Di più ora non posso fare ;)
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
gio 3 mag 2007 - 16:29
Grazie, ora guardo, comunque ho provato a lanciare la Query che eseguo nella WebPart, direttamente su Oracle.....i record che mi restituisce sono circa 180.000!
Direi che DataReader a parte, devo trovare il modo di impaginarli questi Record...... sei d'accordo?
Wamba
Profilo
| Expert
722
messaggi | Data Invio:
gio 3 mag 2007 - 16:44
Direi che un'ottima idea!
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
elsinore
Profilo
| Junior Member
191
messaggi | Data Invio:
lun 7 mag 2007 - 10:39
qualcuno non sa se c'è qualche oggetto nelle webpart per impaginare i record?
Mi ricordo che in ASP usavo una cosa tipo AbsoultePage.....
Torna su
Stanze Forum
Elenco Threads
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 !