0

我的代码是

Public Function resload()
    Dim conn As MySqlConnection = New MySqlConnection(ConfigurationManager.ConnectionStrings("connectionrms").ConnectionString) ''line 18
    Dim comm As MySqlCommand = New MySqlCommand()
    Dim dr As MySqlDataReader
    conn.Open()
    comm = New MySqlCommand("Select distinct name from restaurant", conn)
    dr = comm.ExecuteReader()
    While dr.Read() <> Nothing
        headresnamecombo.Items.Add(dr(0).ToString())
    End While
    dr.Close()
    headresnamecombo.SelectedIndex = 0
    conn.Close()
    Return Nothing
End Function

我的错误

在 C:\Users\Azinova7\Documents\Visual Studio 2008\Projects\Rest\Rest\billingBody.vb:line 18 中的 Rest.billingBody.resload()

在 C:\Users\Azinova7\Documents\Visual Studio 2008\Projects\Rest\Rest\billingBody.vb:line 229 中的 Rest.billingBody.billingBody_Load(Object sender, EventArgs e)

在 System.Windows.Forms.UserControl.OnLoad(EventArgs e)

在 System.Windows.Forms.UserControl.OnCreateControl()

在 System.Windows.Forms.Control.CreateControl(布尔 fIgnoreVisible)

在 System.Windows.Forms.Control.CreateControl()

在 System.Windows.Forms.Control.ControlCollection.Add(控制值)

在 System.Windows.Forms.Form.ControlCollection.Add(控制值)

在 System.Windows.Forms.Design.ControlDesigner.DesignerControlCollection.Add(控制 c)

之后都是相同的连接代码

4

1 回答 1

3

我强烈怀疑这是问题所在:

ConfigurationManager.ConnectionStrings("connectionrms").ConnectionString

我怀疑您的配置中没有名为“connectionrms”的连接字符串。

如果未找到给定的连接字符串,ConnectionStringSettingsCollection索引器将返回。Nothing

不过,这只是您的代码的一个问题。此外,您应该使用Using连接和阅读器的语句,并且您的While循环条件应该只是While dr.Read(). 哦,我会在第一次使用时声明变量,而不是在顶部声明所有内容。

于 2012-08-16T11:56:39.883 回答