在数组中存储值时出现问题

时间:2011-04-13 08:15:15

标签: vb.net exception

我想从我的数据库中存储数组中的值。我使用以下代码,但它返回错误:“对象引用未设置为对象的实例。”

代码是:

Dim w as integer=0

Do While DsChooseSQsNow.tblChooseSQs.Rows.Count > w
      vrSQsNoChosen(w) = DsChooseSQsNow.tblChooseSQs.Rows(w).Item("QNo")
      vrTotalSQsChosen = vrTotalSQsChosen + 1
      w = w + 1
Loop

错误来自"vrSQsNoChosen(w) = DsChooseSQsNow.tblChooseSQs.Rows(w).Item("QNo")"

2 个答案:

答案 0 :(得分:1)

尝试打印值DsChooseSQsNow.tblChooseSQs.Rows(w).Item(“QNo”)

或调试代码

“对象引用未设置为对象的实例。”表示项目(“QNo”)可能为空

答案 1 :(得分:0)

此代码失败的原因有很多。我会开始检查:

  • vrSQsNoChosen数组的大小(和边界)。
  • 发生错误时的
  • w值(vrSQsNoChosen数组和Rows集合的有效索引?)。
  • 发生错误时的
  • Item("QNo")值(可能是null?)。

此外 - VB.NET实现了+=运算符,因此您可以编写:

  w += 1

而不是:

 w = w + 1