读书人

怎么对GridView进行批量更新数据

发布时间: 2012-02-12 17:16:34 作者: rapoo

如何对GridView进行批量更新数据?
本人是个菜鸟,在用vb.net写批量处理的时候,运行时错误提示:
没有为 字符串“Update page Set SortID=” 和 类型“TextBox” 定义运算符“&”。
异常详细信息: System.InvalidCastException: 没有为 字符串“Update page Set SortID=” 和 类型“TextBox” 定义运算符“&”。
错误行是这行:sql.UpdateCommand = "Update page Set SortID=" & iList(j) & "Where PageID= " & Gid

源代码如下:
Dim dv As New DataView
Dim sql As SqlDataSource = New SqlDataSource
sql.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings("DavisLifeMagazineDB").ConnectionString
sql.ProviderName = System.Configuration.ConfigurationManager.ConnectionStrings("DavisLifeMagazineDB").ProviderName()
Dim j As Integer
Dim iList As New ArrayList()
Dim Gid As Integer
For j = 0 To GridView1.Rows.Count - 1
' Gid = CType(GridView1.DataKeys(j).Value, Int32)
Gid = GridView1.DataKeys(j).Value
iList.Add(GridView1.Rows(j).FindControl("TextBox1"))
sql.UpdateCommand = "Update page Set SortID=" & iList(j) & "Where PageID= " & Gid
sql.Update()
Next
Response.Write("数据更新成功!")
End Sub

我计可能是类型转换错误.可我实在不会修改.可否请各位程序员指点一下?如有更好的方法,或劳烦另写批量更新代码也行,不胜感谢!


[解决办法]

iList.Add(CType(GridView1.Rows(j).FindControl("TextBox1"), Textbox)).Text)

[解决办法]
改成这样呢
"Update page Set SortID='" & iList(j) & "' Where PageID='"& Gid &"'"
[解决办法]
"Update page Set SortID=" & iList(j) & "Where PageID= " & Gid


" Where PageID= " whrer前面加个空格


[解决办法]
路过

读书人网 >VB Dotnet

热点推荐