未将对象引用设置为对象的实例(空DataSet ??)

未将对象引用设置为对象的实例(空DataSet ??)

问题描述:

我试图通过将值传递给它的tableadapter来打开表单。在下面的代码中,Acct有一个值,但错误在waterDataSet.AR上。显然它是空的。数据集如何为空?我怎么去解决这个错误,谢谢!请注意,我在其他地方使用注释掉的代码没有问题!未将对象引用设置为对象的实例(空DataSet ??)

 public void LoadWaterAcct(String Acct, String tableName) 
    { 
     //demTableAdapter1.FillByStreet(waterDataSet.DEM, Num, Dir, Street); 
     arTableAdapter1.FillByWaterAcct(waterDataSet.AR, Acct); 

    } 

谢谢!

+0

'DataSet'是一个引用类型,如果你没有实例化它,或者它已经被垃圾收集,它将是'null'。 – 2012-02-09 01:22:57

+0

数据集如何为空?与其他变量一样。 waterDataSet是一个全局变量还是什么?显示代码在哪里设置。 – JohnFx 2012-02-09 01:24:38

+0

你的第二点,如果他有一个参考它不会被垃圾收集。 – 2012-02-09 01:26:09

数据集如何为空?

DataSet是引用类型,所以直到你分配一个DataSet实例,它DataSet类型的变量是空...

+0

你是说我需要写一些类似waterDataSet set = new waterDataSet(“AR”);这使我困惑的原因是因为我不必使用waterDataSet.DEM表来做到这一点? – korrowan 2012-02-09 01:37:09

+0

@korrowan,如果它与waterDataSet.DEM一起使用,那么它不是waterDataSet,它是null ...我怀疑它实际上是arTableAdapter1 – 2012-02-09 01:43:17

+0

它确实是tableadapter!我该如何解决这个问题? – korrowan 2012-02-09 01:47:56

你创建FillByWaterAcct查询? http://msdn.microsoft.com/en-us/library/kda44dwy.aspx