我已经看到了一些如何通过将所有代码放在aspx文件中来做到这一点的例子,但我正试图从代码隐藏中做到这一点。这是我在后面的代码中所拥有的:
Dim dt As New DataTable
Using conn As New OleDbConnection(ConnectionString)
conn.Open()
Dim dtAdapter As New OleDbDataAdapter
Dim command As New OleDbCommand("SELECT * FROM table " & _
"" _
, conn)
dtAdapter.SelectCommand = command
dtAdapter.Fill(dt)
conn.Close()
End Using
GridView1.DataSource = dt
GridView1.DataBind()
我对任何解决方案持开放态度,但如果可能的话,我更愿意在代码隐藏中执行此操作,因为应用程序的其余部分是如此。我不需要使用gridview只显示一些表格数据,所以无论什么工作都没关系。我试图避免手动构建SQL字符串。有什么想法吗?
答案 0 :(得分:1)
我没有看到这个问题。如果您不知道如何过滤查询中的记录,请将Where
子句与参数一起使用:
Dim dt = New DataTable()
Using conn As New OleDbConnection(ConnectionString)
Dim queryString As String = "SELECT * FROM Table WHERE Field1 LIKE ?"
Dim command As OleDbCommand = New OleDbCommand(queryString, conn)
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a%"
Using da = New OleDbDataAdapter(command)
' you don't need to open/close a connection if you use DataAdapter.Fill
da.Fill(dt)
End Using
End Using
GridView1.DataSource = dt
GridView1.DataBind()