Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net VB应用程序中的NullReferenceException错误?_Vb.net_Nullreferenceexception - Fatal编程技术网

Vb.net VB应用程序中的NullReferenceException错误?

Vb.net VB应用程序中的NullReferenceException错误?,vb.net,nullreferenceexception,Vb.net,Nullreferenceexception,我正在为电话建立一个投票系统,并尝试在VB中建立它。到目前为止,这就是我所拥有的: Dim con As New OleDb.OleDbConnection Dim dbProvider As String Dim dbSource As String dbProvider = "PROVIDER=Microsoft.Jet.OLEDB.4.0;" dbSource = "Data Source = C:\PhonePoll.mdb" con.

我正在为电话建立一个投票系统,并尝试在VB中建立它。到目前为止,这就是我所拥有的:

    Dim con As New OleDb.OleDbConnection
    Dim dbProvider As String
    Dim dbSource As String

    dbProvider = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
    dbSource = "Data Source = C:\PhonePoll.mdb"

    con.ConnectionString = dbProvider & dbSource

    con.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source = C:\PhonePoll.mdb"

    con.Open()

    'sql = "SELECT * FROM voting"
    'da = New OleDb.OleDbDataAdapter(sql, con)
    'da.Fill(ds, "voting")

    If inc <> -1 Then

        Dim cb As New OleDb.OleDbCommandBuilder(da)
        Dim dsNewRow As DataRow

        dsNewRow = ds.Tables("voting").NewRow()
        dsNewRow.Item("voted") = RadioButton1.Checked.ToString
        dsNewRow.Item("voted") = RadioButton2.Checked.ToString
        dsNewRow.Item("voted") = RadioButton3.Checked.ToString
        dsNewRow.Item("voted") = RadioButton4.Checked.ToString

        ds.Tables("voting").Rows.Add(dsNewRow)

        da.Update(ds, "voting")

        MsgBox("New Record added to the Database")

    End If

    MsgBox("Phone call has been logged")

    con.Close()
我不确定我做错了什么


为帮助干杯

我假设在实际代码中,您没有注释掉数据集的SQL和Fill()方法,这只是上面代码中的一个输入错误-对吗?如果我错了,并且该代码块被注释掉了,那么您的数据集是空的,这就是问题所在…

不要将所有代码放在一行上-将其拆分。 ds为空,或者 表(“投票”)返回空值,但您永远不会知道,因为它是暂时的。您不能检查它,因为您没有将它存储在变量中

这就是为什么我尽量不打太长时间的电话:


A b=me.foo.bar.baz.fuz.bom()ds为
null
,未初始化

如果你不引用:

'sql = "SELECT * FROM voting"
'da = New OleDb.OleDbDataAdapter(sql, con)
'da.Fill(ds, "voting")

我不明白,我把它们注释掉了,因为它一开始就不起作用。我现在已经取消了它们的注释,它还能工作吗?谢谢你的帮助!
'sql = "SELECT * FROM voting"
'da = New OleDb.OleDbDataAdapter(sql, con)
'da.Fill(ds, "voting")