测试更新错误,显示下面错误信息:
並未將物件參考設定為物件的執行個體
行 52: Dim tb01n As string = CType(e.Item.FindControl("sys04a01n"), TextBox).Text
,
页面代码如下:就只可以执行删除命令,而不能够更新~~~请大哥们指导一下!
Function CreateDataSet(sqlstr As String, FileName As String, TableName As String) As DataSet
Dim ConnString As string ="server=server1;uid=pm; pwd=1234567890;database=eup;"
Dim objCmd As New sqlDataAdapter(sqlstr, ConnString)
Dim DS As New DataSet()
objCmd.Fill(DS, "sys04a")
CreateDataSet = DS
End function
Sub BindList()
Dim sqlstr As string = "Select * From sys04a"
myDataList.DataSource = CreateDataSet(sqlstr,"eup.mdf", "sys04a")
myDataList.DataBind()
End Sub
Sub Page_Load(sender As object, e As Eventargs)
If Not IsPostBack Then BindList()
End Sub Sub DataList_EditCommand(sender As object, e As DataListCommandEventArgs)
myDataList.EditItemIndex = e.Item.ItemIndex
BindList()
End SubSub DataList_DeleteCommand(sender As object, e As DataListCommandEventArgs)
Dim sqlstr As string = "Delete From sys04a Where " & myDataList.DataKeyField & "=" & myDataList.DataKeys(e.Item.ItemIndex)
ExecuteSQL(sqlstr)
myDataList.EditItemIndex = -1
BindList()
End Sub Sub DataList_UpdateCommand(sender As object, e As DataListCommandEventArgs)
Dim tb01n As string = CType(e.Item.FindControl("sys04a01n"), TextBox).Text
Dim tb02i As string = Ctype(e.Item.FindControl("sys04a02i"), TextBox).Text
Dim tb03n As string= Ctype(e.Item.FindControl("sys04a03n"), TextBox).Text
Dim sqlstr As string = "Update sys04a Set sys04a01n='" & tb01n & "',sys04a02i='" & tb02i & "',sys04a03n='" & tb03n & "' Where " & myDataList.DataKeyField & "=" & myDataList.DataKeys(e.Item.ItemIndex) & ""
ExecuteSQL(sqlstr)
myDataList.EditItemIndex = -1
BindList()
End Sub<Asp:DataList Runat="Server" Id="myDataList" CellPadding="3" Width="700"
HorizontalAlign="Center" OnEditCommand="DataList_EditCommand"
OnUpdateCommand="DataList_UpdateCommand" OnDeleteCommand="DataList_DeleteCommand"
OnCancelCommand="DataList_CancelCommand" DataKeyField="sys04a02i"
ExtractTemplateRows="True" Border="1" BorderColor="Blue" GridLines="Horizontal">
並未將物件參考設定為物件的執行個體
行 52: Dim tb01n As string = CType(e.Item.FindControl("sys04a01n"), TextBox).Text
,
页面代码如下:就只可以执行删除命令,而不能够更新~~~请大哥们指导一下!
Function CreateDataSet(sqlstr As String, FileName As String, TableName As String) As DataSet
Dim ConnString As string ="server=server1;uid=pm; pwd=1234567890;database=eup;"
Dim objCmd As New sqlDataAdapter(sqlstr, ConnString)
Dim DS As New DataSet()
objCmd.Fill(DS, "sys04a")
CreateDataSet = DS
End function
Sub BindList()
Dim sqlstr As string = "Select * From sys04a"
myDataList.DataSource = CreateDataSet(sqlstr,"eup.mdf", "sys04a")
myDataList.DataBind()
End Sub
Sub Page_Load(sender As object, e As Eventargs)
If Not IsPostBack Then BindList()
End Sub Sub DataList_EditCommand(sender As object, e As DataListCommandEventArgs)
myDataList.EditItemIndex = e.Item.ItemIndex
BindList()
End SubSub DataList_DeleteCommand(sender As object, e As DataListCommandEventArgs)
Dim sqlstr As string = "Delete From sys04a Where " & myDataList.DataKeyField & "=" & myDataList.DataKeys(e.Item.ItemIndex)
ExecuteSQL(sqlstr)
myDataList.EditItemIndex = -1
BindList()
End Sub Sub DataList_UpdateCommand(sender As object, e As DataListCommandEventArgs)
Dim tb01n As string = CType(e.Item.FindControl("sys04a01n"), TextBox).Text
Dim tb02i As string = Ctype(e.Item.FindControl("sys04a02i"), TextBox).Text
Dim tb03n As string= Ctype(e.Item.FindControl("sys04a03n"), TextBox).Text
Dim sqlstr As string = "Update sys04a Set sys04a01n='" & tb01n & "',sys04a02i='" & tb02i & "',sys04a03n='" & tb03n & "' Where " & myDataList.DataKeyField & "=" & myDataList.DataKeys(e.Item.ItemIndex) & ""
ExecuteSQL(sqlstr)
myDataList.EditItemIndex = -1
BindList()
End Sub<Asp:DataList Runat="Server" Id="myDataList" CellPadding="3" Width="700"
HorizontalAlign="Center" OnEditCommand="DataList_EditCommand"
OnUpdateCommand="DataList_UpdateCommand" OnDeleteCommand="DataList_DeleteCommand"
OnCancelCommand="DataList_CancelCommand" DataKeyField="sys04a02i"
ExtractTemplateRows="True" Border="1" BorderColor="Blue" GridLines="Horizontal">
是:
Dim tb01n As string = CType(e.Item.FindControl("sys04a01n"), TextBox).Text
findcontrol()这句里面的“sys04a01n” 都改为<EditItemTemplate>里<Asp:TextBox 的Id字段不过都很谢谢楼上的看我的问题,还提出意见!!!十分感谢