Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Update Command

14 views
Skip to first unread message

Alfeo Lenardis

unread,
Jan 3, 2013, 10:19:36 AM1/3/13
to
Buon giorno

Ho ripreso a smanettare un po' con asp.net e molte cose le ho dimenticate e le sto rispolverando un po' alla volta.

il problema che vi pongo e nel codice sotto riportato nella quale alla esecuzione di un qualsiasi comando non riesce a caricare il data set modificato e di fatto mi riporta al data set del page load:

Imports Devart.Data.MySql
Imports System.Web
Imports System.Data

Partial Class ricerca

Inherits System.Web.UI.Page
'Dichiaro e setto le variabili
Dim myconnectionstr As String = "User Id=root;Password=@@Rt90<<;Host=127.0.0.1;Database=gestcar"
Dim connection As Devart.Data.MySql.MySqlConnection = New Devart.Data.MySql.MySqlConnection(myconnectionstr)
Dim command As Devart.Data.MySql.MySqlCommand = New Devart.Data.MySql.MySqlCommand()
Dim dataAdapter As Devart.Data.MySql.MySqlDataAdapter = New Devart.Data.MySql.MySqlDataAdapter()
Dim commandBuilder As Devart.Data.MySql.MySqlCommandBuilder = New Devart.Data.MySql.MySqlCommandBuilder()
Dim myDataSet As System.Data.DataSet = New System.Data.DataSet()
'Codice da inserire *



'Inserisco la colonna per editare il record
Private Sub dataGrid_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dataGrid.EditCommand
dataGrid.EditItemIndex = e.Item.ItemIndex
BindGrid()
End Sub
'Inserico la colonna con il comando update
Private Sub dataGrid_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dataGrid.UpdateCommand
'dataAdapter.Fill(myDataSet, "Table")
'dataAdapter.Update(myDataSet, "Table")
Dim I As Integer
'Ciclo for per tutti i campi
For I = 2 To e.Item.Cells.Count - 1
Dim ColValue As String = CType(e.Item.Cells.Item(I).Controls.Item(0), TextBox).Text
If String.IsNullOrEmpty(ColValue) And myDataSet.Tables("Table").Columns(I - 2).DataType IsNot GetType(String) Then
myDataSet.Tables("Table").Rows(e.Item.ItemIndex)(I - 2) = DBNull.Value
Else
myDataSet.Tables("Table").Rows(e.Item.ItemIndex)(I - 2) = ColValue
End If
Next I
dataGrid.EditItemIndex = -1
BindGrid()
End Sub
'Inserisco la colonna con il comando cancel
Private Sub dataGrid_CancelCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dataGrid.CancelCommand

dataGrid.EditItemIndex = -1
BindGrid()
End Sub
'Inserisco la colonna con il comando Delete
Private Sub dataGrid_DeleteCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dataGrid.DeleteCommand

Dim view As DataView = New DataView(myDataSet.Tables("Table"))
view.Delete(e.Item.ItemIndex)
BindGrid()
End Sub

Private Sub BindGrid()
If myDataSet.Tables("Table") IsNot Nothing Then
dataGrid.DataSource = myDataSet.Tables("Table").DefaultView
lbResult.Visible = True
' btInsertRecord.Visible = True
If myDataSet.Tables("Table").GetChanges() IsNot Nothing Then
lbInfo.Text = "Changed"
End If
Else
dataGrid.DataSource = Nothing
lbResult.Visible = False
' btInsertRecord.Visible = False
End If

dataGrid.DataBind()
End Sub

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
'If IsPostBack Then
Try
connection.Open()
lbState.Text = "Success"
lbState.ForeColor = System.Drawing.Color.Blue()
command.CommandText = "SELECT Targa,Immatricolazione,Modello,Unita,Intestatario,stato_idstato FROM gestcar.automezzi;"
dataAdapter.SelectCommand = command
dataAdapter.SelectCommand.Connection = connection
'command.ExecuteNonQuery()
dataAdapter.Fill(myDataSet, "Table")
connection.Close()
Catch exception As Exception
lbState.Text = "Failed"
lbState.ForeColor = System.Drawing.Color.Red
lbError.Text = exception.Message
End Try
BindGrid()
' End If
End Sub

Protected Sub InsRow_Click(sender As Object, e As EventArgs) Handles InsRow.Click
myDataSet.DataSetName = "NewDataSet"
Dim row As DataRow = myDataSet.Tables("Table").NewRow()
myDataSet.Tables("Table").Rows.Add(row)
dataGrid.EditItemIndex = myDataSet.Tables("Table").Rows.Count - 1
BindGrid()
End Sub
End Class


Ringraziando anticipatamente auguro a voi tutti un buon anno.
0 new messages