![]() |
Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Tech (http://www.dsy.it/forum/forumdisplay.php?forumid=189)
-- [Asp.Net] Update datagrid (http://www.dsy.it/forum/showthread.php?threadid=20147)
[Asp.Net] Update datagrid
Ho un problema con la funzione update del datagrid.
Uso vbscript.
Ho due problemi.
1)
http://www.icconcorezzo.brianzaest.it/prova.aspx
Il problema è questo:
quando faccio edit ed edito il testo, me lo memorizza nel db, ma non mi aggiorna la pagina. Se aggiorno, mi dà il dato che ho appena memorizzato. Ho provato a mettere un response.redirect dandogli la stessa pagina, ma non funziona.
2)
Devo fare un'area protetta da user e pass.
Il web.config l'ho impostato in questo modo:
code:
<configuration> <system.web> <compilation defaultLanguage="vb" debug="true" /> <authentication mode="Forms"> <forms name="auth" loginUrl="login.aspx" protection="All" timeout="30"> <credentials passwordFormat="Clear"> <user name="admin" password="admin" /> </credentials> </forms> </authentication> <authorization> <allow users="admin" /> <deny users="?" /> </authorization> </system.web> </configuration>
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
1) Devi rifare il databind della datagrid al termine dell'edit
ergo devi rifare la query a db e ripopolare il controllo.
2) la configurazione e' corretta ma non te la applica con conseguente errore perche' la directory che stai cercando di proteggere non e' un directory virtuale di IIS.
Accedendo da pannello di controllo, tools amministrativi --> Internet Information Services, indiviadua la directory che ti interessa e virtualizzala.
se sono stato ostico, chiedimi pure ulteriori spiegazioni
Ciao
__________________
Alcuni uomini vedono le cose come sono e dicono: << Perche' ? >>
Io sogno le cose come non sono mai state e dico: << Perche' No ? >>
George Barnard Shaw, Commediografo.
"non preoccuparti troppo, comunque vada la vita, non ne uscirai vivo !" - anonimo
Originally posted by Rocco.Li
2) la configurazione e' corretta ma non te la applica con conseguente errore perche' la directory che stai cercando di proteggere non e' un directory virtuale di IIS.
Accedendo da pannello di controllo, tools amministrativi --> Internet Information Services, indiviadua la directory che ti interessa e virtualizzala.


__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
Per quanto riguarda il controllo DataGrid ha ragione Rocco, non sapevo invece nulla sulla seconda questione. Grazie per il chiarimento, è utile anche a me!
__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
Originally posted by ripe
Per quanto riguarda il controllo DataGrid ha ragione Rocco, non sapevo invece nulla sulla seconda questione. Grazie per il chiarimento, è utile anche a me!
__________________
Alcuni uomini vedono le cose come sono e dicono: << Perche' ? >>
Io sogno le cose come non sono mai state e dico: << Perche' No ? >>
George Barnard Shaw, Commediografo.
"non preoccuparti troppo, comunque vada la vita, non ne uscirai vivo !" - anonimo
A me non piace molto la protezione via Web.config... preferisco lasciare l'accesso libero a tutti gli utenti da configurazione, e poi controllare pagina per pagina le credenziali... però ho capito come devo fare se sono costretto ad usarla!
__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
Originally posted by ripe
A me non piace molto la protezione via Web.config... preferisco lasciare l'accesso libero a tutti gli utenti da configurazione, e poi controllare pagina per pagina le credenziali... però ho capito come devo fare se sono costretto ad usarla!
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
Originally posted by Rocco.Li
1) Devi rifare il databind della datagrid al termine dell'edit
ergo devi rifare la query a db e ripopolare il controllo.
code:
MyDataGrid.EditItemIndex = -1 BindDataGrid()
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
Originally posted by Sonia
in che senso ripe?
tu come imposti le aree protette?

__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
Non riesco proprio a sistemare 
code:
Dim objNomeCtrl As TextBox objNomeCtrl = CType(objArgs.Item.FindControl("txt_nome"), TextBox) 'crea sql per update ed esegue Dim strSQL As String strSQL = "UPDATE interne SET Nome='" & objNomeCtrl.Text & "' WHERE ID=" & MyDataGrid.DataKeys(objArgs.Item.ItemIndex) & "" ExecuteSQLStatement(strSQL) Dim cn As OleDbConnection Dim strConnect As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" _ & Server.MapPath("database\menu.mdb") 'crea ed apre una nuova connection Dim objConnect As New OleDbConnection(strConnect) objConnect.Open() 'crea un nuovo Command Dim objCommand As New OleDbCommand(strSQL, objConnect) Dim objDataReader As OleDbDataReader 'esegue sql con Datareader objDataReader = objCommand.ExecuteReader() MyDataGrid.DataSource = objDataReader 'setta EditItemIndex a -1 per uscire dalla funzione di edit MyDataGrid.EditItemIndex = -1 Dim strSelect As String strSelect = "SELECT * FROM interne where riferimento='2'" Try 'crea la connect e la apre Dim objConnect2 As New OleDbConnection(strConnect) objConnect2.Open() 'crea un Command ed esegue la sql Dim objCommand2 As New OleDbCommand(strSelect, objConnect2) objDataReader = objCommand2.ExecuteReader() Catch objError As Exception 'mostra gli errori outError.InnerHtml = "<b>* Error while accessing data</b>.<br />" _ & objError.Message & "<br />" & objError.Source & "<p />" Exit Sub ' e ferma l'esecuzione End Try MyDataGrid.DataSource = objDataReader MyDataGrid.DataBind()
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
Faccio fatica a leggere il codice scritto da altri! 
Ma in linea di massima mi pare tutto corretto... sarà perché io non uso l'EditItemTemplate per modificare i dati!
Non capisco bene la sequenza delle operazioni che fai, cioè:
- prima aggiorni il database (ExecuteSQLStatement cos'è?)
- poi aggiorni la sorgente di dati ed esci dalla funzione di modifica, ma senza collegare i dati col DataBind
- successivamente leggi nuovamente i dati dalla tabella e li colleghi
__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
Originally posted by ripe
Faccio fatica a leggere il codice scritto da altri!
Ma in linea di massima mi pare tutto corretto... sarà perché io non uso l'EditItemTemplate per modificare i dati!
Non capisco bene la sequenza delle operazioni che fai, cioè:
- prima aggiorni il database (ExecuteSQLStatement cos'è?)
- poi aggiorni la sorgente di dati ed esci dalla funzione di modifica, ma senza collegare i dati col DataBind
- successivamente leggi nuovamente i dati dalla tabella e li colleghi
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
Mi viene in mente una cosa... dove colleghi i dati la prima volta al datagrid prova a mettere (se non l'hai già fatto):
If Not Page.IsPostBack Then
*** il tuo vecchio codice ***
End If
__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
Originally posted by ripe
Mi viene in mente una cosa... dove colleghi i dati la prima volta al datagrid prova a mettere (se non l'hai già fatto):
If Not Page.IsPostBack Then
*** il tuo vecchio codice ***
End If
__________________
Spietata e diabolica!
"Questi libri non possono cancellare secoli di storia, specialmente se quella storia è sostenuta dal più grande best seller di tutti i tempi." Fraukman aveva sgranato gli occhi. "Non dirmi che Harry Potter parlava del Santo Graal."
"Parlavo della Bibbia." Fraukman aveva fatto una smorfia. "Dovevo aspettarmelo."
E fin qui va bene... nella BindDataGrid cosa c'è invece?
__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»
| All times are GMT. The time now is 04:58. | Show all 15 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.