Lettura da database e visualizzazione dati

mercoledì 10 febbraio 2010 - 17.41

NetDev Profilo | Newbie

Ciao a tutti,
sto studiando DataSet e DataAdapter per visualizzare i dati di un database.
Al momento sono riuscito solo a visualizzare il primo record della mia tabella di database (costituita da 2 colonne) tramite:

lblNome.Text = ds.Tables("Utenti").Rows(0).Item(0)
lblCognome.Text = ds.Tables("Utenti").Rows(0).Item(1)

dove "ds" è il mio dataSet e "Utenti" è l'identificatore del Fill del mio dataAdapter.

La prima domanda è: come posso fare per visualizzare tutti i dati sul mio database all'interno di una tabella? L'obiettivo è poi quello di poter inserire, modificare e cancellare i dati.

La seconda: dal momento che sono in fase di studio, è questo il metodo migliore? Ho usato anche il controllo GridView tramite l'interfaccia di Visual Web Developer ma preferirei essere io a scrivere il codice, almeno all'inizio.

Grazie!

skraus Profilo | Junior Member

Ciao per leggere il contenuto di un dataTable io utilizzeri un ciclo foreach sui dataRow.

in c#
foreach (DataRow recordCorrente in myDataSet.Tables["nomeTabella"].rows)
{
//codice lettura campi
}

Per quanto riguarda il bindaggio con un gliglia. Io ti consiglio di utilizzare il binding "automatico" che ti offrono i vari controlli .net, altrimenti perdi una buona parte di vantaggio di sviluppare in .net (impieghi meno tempo per fare le cose).
Sk

NetDev Profilo | Newbie

Grazie per la risposta.

Non mi è chiarissimo però come posso creare una tabella, immagino di dover scrivere del codice dentro al for each che mi crei un tr per ogni record.
Puoi mica postarmi un esempio?

In alternativa sto utilizzando un controllo GridView che prende i dati da un DataSource. Tutto fatto con Visual Web Developper.
Si autogenera una tabella che rispecchia la mia tabella di database.
In questo modo però, come posso rendere cliccabile un record se non ho del codice su cui lavorare?

Grazie!

skraus Profilo | Junior Member

Da quello che mi scrivi intuisco che tu stia lavorando in asp.net.

Per creare una tabella io utilizzerei il SqlDataSource e GridView. L'uso combinato di questi due oggetti ti consentono di:
a) realizzare una tabella paginabile, ordinabile e personalizzabile con pochi clic e poco codice e conseguentemente poco tempo;
b) i campi risultati dalla query sul db vengono automaticamente bindati alla griglia e cmq puoi applicare tutte le personalizzazioni che vuoi;
c) una ottimizzazione programmata e realizzata da Microsoft nei confornti di origini dati quali Access, SQL Server Oracle e non solo;

Ti allego comunque una pagina di esempio che utilizza il database di esempio AdventureWorks di Sql Server 2005.

In rete trovi tantissimo materiale su questi due oggetti ed argomenti.
Sk

NetDev Profilo | Newbie

Grazie molto gentile!
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5