ERROR con un DATAGRID al hacer UPDATE

Santiago
11 de Febrero del 2004
Estimados compañeros,

Estoy haciendo el ejemplo de uso del Datagrid y uso de UPDATE y DELETE en Visual Studio .NET utilizando ASP .NET. El Delete lo hace sin problemas pero cuando intento hacer el UPDATE obtengo el siguiente error: "Update requiere que UpdateCommand sea válido cuando se pasa la colección DataRow con filas modificadas."

He leído en Microsoft que hay que incluir un SQLCommandBuilder apuntando al DataAdapter para solucionarlo pero No lo he conseguido.

Os envío parte del código para por si alguien puede ayudarme

Nota: En comentarios aparece el SqlCommandBuilder que he intentado poner para resolver el problema


Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand
DataGrid1.EditItemIndex() = e.Item.ItemIndex
DataGrid1.DataBind()
End Sub

Private Sub DataGrid1_CancelCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.CancelCommand
DataGrid1.EditItemIndex() = -1
DataGrid1.DataBind()
End Sub

Private Sub DataGrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.UpdateCommand

Dim empresa, cargo As String

' Obtenemos el valor de la columna clave de la columna que va a ser modificada
Dim key As String = DataGrid1.DataKeys(e.Item.ItemIndex).ToString

Dim tb As TextBox 'Obtenemos los campos modificados
tb = CType(e.Item.Cells(1).Controls(0), TextBox)
empresa = tb.Text
tb = CType(e.Item.Cells(2).Controls(0), TextBox)
cargo = tb.Text

Dim r As DataSet1.clientesRow
r = DataSet11.clientes.FindBynombre(key)

' Actualizamos el dataset
r.empresa = empresa
r.cargo() = cargo

'Dim cb As New SqlCommandBuilder(SqlDataAdapter1)

SqlDataAdapter1.Update(DataSet11) ' Actualizamos la base de datos con el dataset
DataGrid1.EditItemIndex = -1 ' Quitamos el modo de Edición
DataGrid1.DataBind() ' Refrescamos el grid

End Sub

Muchas Gracias

Elph
11 de Febrero del 2004
Tienes inicializado el valor de UpdateCommand, con la sentencia sql adecuada?