121 messaggi dal 06 giugno 2005
Sto sviluppando il data layer di un'applicazione.
Tra le funzioni c'è quella di fare una "Select" per popolare una GridView.
Mi ritrovo quindi con un DataReader, che contiene i dati, e non so se per fare riempire la grid è necessario convertirlo in un DataSet o che altro? Se si, come?

Grazie
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

niente di più facile.

grd.DataSource = datareader;
grd.DataBind();

btw, leggiti questo articolo sulle architetture: http://www.aspitalia.com/articoli/architettura/layered-architecture.aspx

HTH

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
121 messaggi dal 06 giugno 2005
il problema si verifica quando resituisco il DataReader dal data layer al business layer.

Utilizzando il mio codice:

DATA LAYER:

Public Function selectData (...) As DataReader

... 'Apre la connessione, effettua il comando

Return DataReader 'Ritorna il valore

... 'Chiudi la connessione

End Function


Non viene restituito niente. Se non sbaglio il DataReader perde i dati acquisiti una volta chiusa la connessione, ma non posso non chiuderla per non occupare troppa memoria nel server.

Sto dicendo un sacco di cavolate o effettivamente il problema c'è?

Grazie ancora
4 messaggi dal 05 settembre 2015
Ciao SM15545,
ho applicato la tua semplice soluzione, ma il gridview non si è popolato;
il codice è il seguente:

Protected Sub btnEstratto_Click(sender As Object, e As EventArgs) Handles btnEstratto.Click
cmd = cn.CreateCommand
cmd.CommandText = "SELECT * FROM MOvimenti WHERE Codice_UtMov =" & CodiceMio
dr = cmd.ExecuteReader()
If dr.HasRows = True Then
grdEstratto.DataSource = dr
grdEstratto.DataBind()

Else
lblCodice.Text = "Non ci sono Movimenti"
End If

End Sub

Il DataReader si popola, il gridview no ....
Cosa mi manca ???
Grazie.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.