【问题标题】:VB.NET & SQL : The ConnectionString property has not been initializedVB.NET & SQL:ConnectionString 属性尚未初始化
【发布时间】:2013-03-20 15:54:28
【问题描述】:

我正在尝试创建一个搜索,其中 SQL 查询取决于一个单选按钮和一个文本框。表格、文本框和单选按钮都在同一个表单上。我正在使用 Microsoft Visual Studio 2012 for Web,并尝试更改表单上 GridView 对象的数据源。但是,我不断收到错误消息:

ConnectionString 属性尚未初始化。

我该如何解决这个问题? 以下是我的完整代码。

Protected Sub btnSearch_Click(sender As Object, e As ImageClickEventArgs) Handles btnSearch.Click
    Dim sqlQuery As String = ""
    If radClient.Checked = True Then
        GridView1.Visible = False
        sqlQuery = "SELECT * FROM Sales WHERE ClientID = '" & txtSearch.Text & "'"
    ElseIf radItem.Checked = True Then
        GridView1.Visible = False
        sqlQuery = "SELECT * FROM Sales WHERE ItemID = '" & txtSearch.Text & "'"
    ElseIf radUser.Checked = True Then
        GridView1.Visible = False
        sqlQuery = "SELECT * FROM Sales WHERE UserID = '" & txtSearch.Text & "'"
    ElseIf radUser.Checked = False And radClient.Checked = False And radItem.Checked = False Then
        ErrorLabel.Text = "Error: You have not chosen a search criteria."
        Return
    End If
    SqlDataSource3.SelectCommand = sqlQuery
    SqlDataSource3.DataBind()
End Sub

感谢@Steve、@MuhammadOmar、@Westie 和 @AmitApollo 对我之前线程中的代码的帮助。

谢谢!

【问题讨论】:

  • 首先,请使用 SQL 参数。
  • 我会在我完成后,但我只是想让它现在工作:)
  • 另外,这是我自己的服务器的本地应用程序,除了我之外没有人可以访问它,并且它受到登录保护,使用参数来防止 SQL 注入攻击,如果有人真的能够持有我的系统。
  • 在DataBind之前设置SqlDataSource的ConnectionString属性

标签: sql vb.net connection-string


【解决方案1】:

你应该这样做

创建一个全局连接变量

dim con as new SQLConnection
con.connectionsting = "Set your connection string"
con.open

当你写了你的代码之后再写

con.close

它会解决你的问题

帮助它有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-02
    • 2021-06-21
    • 2017-03-03
    • 2012-05-26
    相关资源
    最近更新 更多