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:line229の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(Boolean 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(Control c)で

その後はすべて同じ接続コードです

4

1 に答える 1

3

私はこれが問題であると強く疑っています:

ConfigurationManager.ConnectionStrings("connectionrms").ConnectionString

構成に「connectionrms」という名前の接続文字列が含まれていないようです。

指定された接続文字列が見つからない場合、インデクサーConnectionStringSettingsCollection戻ります。Nothing

ただし、これはコードの1つの問題にすぎません。さらに、Using接続とリーダーにステートメントを使用する必要があり、Whileループ条件はである必要がありますWhile dr.Read()。ああ、そして私は最初の使用時にすべてを宣言するのではなく、変数を宣言します。

于 2012-08-16T11:56:39.883 に答える