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
SqlDataSource
lunedì 09 marzo 2009 - 13.18
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
lun 9 mar 2009 - 13:18
salve,
ho un SqlDataSource (SqlDSTab), che dopo il login trasformo in dataReader per poter prendere il contnuto di alcuni campi. Uso questo codice:
SqlDSTab.DataSourceMode = SqlDataSourceMode.DataReader;
SqlDataReader dr = (SqlDataReader)SqlDSTab.Select(DataSourceSelectArguments.Empty);
dr.Read())
TextBox txb1 = (TextBox)FormView1.FindControl("txbDGT");
txb1.Text = drAna["DGT"].ToString();
dr.Close();
SqlDSTab.DataSourceMode = SqlDataSourceMode.DataSet;
Quando mando in esecuzione la pagina, mi ritorna questo errore:
Riferimento a un oggetto non impostato su un'istanza di oggetto.
Non capisco dove sbaglio. Qualche suggerimento?
grazie
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
lun 9 mar 2009 - 13:21
>salve,
Ciao!
>Non capisco dove sbaglio. Qualche suggerimento?
hai fatto debug? Dove ottieni l'errore? su che riga? forse sul textbox?
>grazie
di nulla!
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
lun 9 mar 2009 - 17:26
scusa per la disattenzione. L'eerrore lo da' sulla riga:
dr.Read()
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
lun 9 mar 2009 - 17:29
>scusa per la disattenzione. L'eerrore lo da' sulla riga:
>dr.Read()
allora il dr non è valorizzato, è null. Prova fare debug e capire come mai il datareader non viene istanziato.
fermati sulla riga precedente e controlla con un quick watch cosa torna la .Select.
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
mar 10 mar 2009 - 13:24
si, usando il debug ho notatao che il dr è vuoto.
Ci ho smanettato un po' ed ho notato che l'errore era dovuto alla mancata valorizzazione di un parametro.
grazie per il consiglio.
Non so se si possa fare, il dr mi serve per leggere il valore di un campo e questo valore lo uso nell'itemCreated di una formView. Per evitare di aprire e chiudere la tabella, pensavo di aprirla nel pageLoad, memorizzare il dato in una var ed utilizzarlo ad ogni inserimento.
Non sono molto esperto di variabili e per quel che ho letto, si possono usare var pubbliche e di sessione, ma non so, in questo caso, quale convenga usare
qualche consiglio?
grazie
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 11 mar 2009 - 04:36
>Non so se si possa fare, il dr mi serve per leggere il valore
>di un campo e questo valore lo uso nell'itemCreated di una formView.
>Per evitare di aprire e chiudere la tabella, pensavo di aprirla
>nel pageLoad, memorizzare il dato in una var ed utilizzarlo ad
>ogni inserimento.
>Non sono molto esperto di variabili e per quel che ho letto,
>si possono usare var pubbliche e di sessione, ma non so, in questo
>caso, quale convenga usare
>qualche consiglio?
Ma non hai già messo il valore in una textbox?
Fammi capire bene cosa devi fare..
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
mer 11 mar 2009 - 09:29
ho una formView e ad ogni inserimento valorizzo un campo textBox con il dato di un campo che leggo attraverso il dataReader.
Siccome è sempre lo stesso dato da inserire nel textBox, vorrei leggere il dataReader nel PageLoad, inserirlo in una Variabile ed utilizzarlo all'Interno dell'ItemCreated del formView per Valorizzare il TextBox.
Cosa ne pensi?
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 12 mar 2009 - 01:54
>ho una formView e ad ogni inserimento valorizzo un campo textBox
>con il dato di un campo che leggo attraverso il dataReader.
>Siccome è sempre lo stesso dato da inserire nel textBox, vorrei
>leggere il dataReader nel PageLoad, inserirlo in una Variabile
>ed utilizzarlo all'Interno dell'ItemCreated del formView per
>Valorizzare il TextBox.
>Cosa ne pensi?
Diciamo che potresti fare nella load una chiamata col metodo ExecuteScalar():
SQLCommand.ExecuteScalar Method
http://msdn.microsoft.com/en-us/library/9kcbe65k.aspx
OLEDBCommand.ExecuteScalar Method
http://msdn.microsoft.com/en-us/library/979byfca.aspx
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
gio 12 mar 2009 - 09:26
si, ma la mia incertezza è sull'uso delle variabili. Non so quale tipo usare e quando vadano chiuse.
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 12 mar 2009 - 11:35
>si, ma la mia incertezza è sull'uso delle variabili. Non so quale tipo usare e quando vadano chiuse.
Potresti mettere il valore nel Viewstate, oppure in session, scegli tu.
Session[key] = valore;
Viewstate[Key] = valore;
così persisti il valore letto dall'execute scalar e poi lo leggi con
Session[key];
Viewstate[Key];
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
gae58
Profilo
| Senior Member
467
messaggi | Data Invio:
gio 12 mar 2009 - 17:05
ti ringrazio,
mi sa che però quando esco dalla webForm devo annullare o azzerare la variabile, giusto?
Gaetano
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 13 mar 2009 - 02:16
>ti ringrazio,
>
>mi sa che però quando esco dalla webForm devo annullare o azzerare
>la variabile, giusto?
Il viewstate è a livello di pagina, la session a livello di sessione, quindi, nel secondo caso, se non ti serve più al di fuori di quella pagina in cui valorizzi la sessione, puoi pure rimuoverla.
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
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 !