Come popolare una label da db

giovedì 15 novembre 2012 - 18.47
Tag Elenco Tags  C#  |  .NET 3.5  |  Windows 7  |  Visual Studio 2010  |  SQL Server 2008 R2

stellare21 Profilo | Newbie

ciao a tutti,

volevo fare una domanda da principiante, spero che qualcuno trovi la voglia di aiutarmi ma soprattutto spiegarmi, in una pagina aspx ho una dropdown collegata al db dal quale un utente sceglie la sua opzione, alla selezione del dato rendo visibili 3 label, la proprietà text di queste label deve essere riempita da dati presi in 2 tabelle diverse del db condizionate dal codice che ricavo dalla scelta dell'utente sulla dropdown.

per renderla più semplice nella label1 e label2 devo inserire nickname e email che ricavo dalla tabella utente, e nella label 3 il dato punti che ricavo dalla tabella premi, tutto condizionato dall'id che prendo dalla dropdown

<asp:Label ID="Label1" runat="server" Text='<%#"nickname" %>' ></asp:Label> <asp:Label ID="Label2" runat="server" Text='<%#"email" %>' ></asp:Label> <asp:Label ID="Label3" runat="server" Text='<%#"puntitot" %>' ></asp:Label>

nel markup della pagina ho inserito le 3 label

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

nel file cs recupero il codice della selezione e lo metto in una variabile di tipo string (cod) e mi creo la connessione, poi mi blocco qui, non so come passargli le 2 query sql e se conviene mettere il risultato in un data adapter e come passare questo risultato in modo da assegnarlo alla proprietà text della label.

Chiedo se qualcuno è disposto a spiegarmi come devo completare questo codice o se conviene per questo tipo di situazioni un altro approccio, grazie.

ridaria Profilo | Expert

l'approccio mi sembra OK

On selctionChange della DropDown recuperi i dati dalla dropdown ed assembli la/le stringe SQL tali che ti permettono di recuperare i dati da mettere nelle label.

Non fa una grinza a mio avviso.

quindi prosegui con la lettura dei dati dalle tabelle del db e l'assegnazione dei dati prelevati alle label

o forse mi è sfuggito qualcosa?

Riccardo D'Aria

stellare21 Profilo | Newbie

è proprio il passaggio del prelevamento dati e del passaggio di questi all'oggetto, in questo caso la label che mi sfugge e che non ho compreso bene

ridaria Profilo | Expert


>per renderla più semplice nella label1 e label2 devo inserire nickname e email che ricavo dalla tabella >utente, e nella label 3 il dato punti che ricavo dalla tabella premi, tutto condizionato dall'id che prendo >dalla dropdown



string cod = DropDownID.SelectedValue; SqlCommand SQLCmd = new SqlCommand(); 'apri la connessione; SQLCmd.CommandText = ("Select * from tabellaUtente were id/cod = " + cod); SQLCmd.CommandType = CommandType.Text; SQLCmd.Connection = Conn; SqlDataReader reader = SQLCmd.ExecuteReader(); if (reader.hasRows) { reader.Read; label1.text = reader("nickname "); label2.text = reader("email"); } reader.Close(); 'Interroghi la tabella premi SQLCmd.CommandText = ("Select * from tabellaPremi were id/cod = " + cod); SqlDataReader reader = SQLCmd.ExecuteReader(); if (reader.hasRows) { reader.Read; label3.text = reader("premio"); } reader.Close(); 'chiudi la connessione

il c non è il mio forte ma credo che non ci siano errori

Questo è ciò che ti occorre da mettere nell'evento SelectionIndexChanged per popolare le label.

fai dei test e fammi sapere che andiamo avanti

CIAO


Riccardo D'Aria
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