Newsgroup: it.comp.lang.visual-basic
Titolo: [forse OT?] .Net e DataSet

ciao a tutti
vi chiedo cortesemente di aiutarmi perchč non ce la faccio proprio +! :)
in una web application, sto cercando di inserire dei dati in un db access.
Riesco a fare la connessione e tutto, ma non riesco a capire una cosa: uso
un DataSet per "immagazzinare" i dati della tabella del db e poi lo assegno
come DataSource ad un controllo datagrid. il problema č che quando salvo un
record, non voglio che venga salvato nel db, ma solo nel DataSet... e con il
Datagrid, vorrei riuscire a consultare anche i record non ancora salvati nel
DB. NON CI RIESCO! ogni volta che cambio l'indice di paging del datagrid č
come se il nuovo record (non ancora salvato nel db) fosse sparito. Ho
allegato il codice della WebForm qui sotto (per chi avesse la bontą di
controllarlo). Mi sembra impossibile che non si possa... sennņ quale sarebbe
il  vantaggio di lavorare disconnessi dal DB??
Spero in qualche anima buona e paziente. Grazie!
Public Class WebForm2
Inherits 
System.Web.UI.Page
#Region " Web Form Designer Generated Code "
'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
#End Region
Dim strConn As String = Global.ConnStr
Dim cn As New OleDb.OleDbConnection(strConn)
Dim ds As New DataSet()
Dim ca As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter("select * from
tblCorsi order by titoloCorso", cn)
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Label2 As System.Web.UI.WebControls.Label
Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
Protected WithEvents TextBox2 As System.Web.UI.WebControls.TextBox
Protected WithEvents TextBox3 As System.Web.UI.WebControls.TextBox
Protected WithEvents Label3 As System.Web.UI.WebControls.Label
Protected WithEvents Label4 As System.Web.UI.WebControls.Label
Protected WithEvents Label5 As System.Web.UI.WebControls.Label
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Private Sub seleziona()
Dim selSql As String = "SELECT * FROM tblCorsi order by titoloCorso;"
Dim cmd As New OleDb.OleDbCommand(selSql, cn)
ca.SelectCommand = cmd
cn.Open()
ca.MissingSchemaAction = MissingSchemaAction.AddWithKey
ds.Clear()
ca.Fill(ds, "tblCorsi")
cn.Close()
bindGrid()
End Sub
Private Sub bindGrid()
DataGrid1.DataSource = ds.Tables("tblCorsi")
DataGrid1.DataBind()
End Sub
Private Sub DataGrid1_PageIndexChanged(ByVal source As Object, ByVal e As
System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles
DataGrid1.PageIndexChanged
DataGrid1.CurrentPageIndex = e.NewPageIndex
bindGrid()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
insert()
End Sub
Sub insert()
Dim tblCorsi As DataTable
tblCorsi = ds.Tables("tblCorsi")
Dim newRec As DataRow
newRec = tblCorsi.NewRow
newRec("titoloCorso") = TextBox1.Text
newRec("N_Ore") = TextBox2.Text
newRec("Costo") = TextBox3.Text
tblCorsi.Rows.Add(newRec)
Dim cmdBuild As New OleDb.OleDbCommandBuilder(ca)
ca.UpdateCommand = cmdBuild.GetInsertCommand()
ca.Update(ds, "tblCorsi")
ds.AcceptChanges()
bindGrid()
End Sub
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Handles MyBase.Load
If Page.IsPostBack Then
ca.Fill(ds, "tblCorsi")
bindGrid()
Else
seleziona()
End If
End Sub
End Class

End Sub
-- 
ciao, hal