我的dataset为什么不能清空啊
DataSet ds = new DataSet
ds.Clear();
ds.Dispose();
int tableCount=  ds.Tables.Count;
为什么tableCount还是不等于0???

解决方案 »

  1.   

    DataSet.Clear只是把所有的DataTable清空,并不移除DataTable,等于剩一大堆空的DataTable。
    DataTableCollection.Clear(DataSet.Tables.Clear())才能把所有的DataTable从DataSet.Tables集合中移除,但他不会清空DataTable。
      

  2.   

    附上我的测试代码
    DataSet ds=new DataSet();
    DataTable[] dtl=new DataTable[5];
    for(int i=0;i<5;i++)
        dtl[i]=new DataTable(""+i.ToString()); ds.Tables.AddRange(dtl);
    MessageBox.Show(ds.Tables.Count.ToString()); ds.Tables.Clear(); ds.Dispose();
    MessageBox.Show(ds.Tables.Count.ToString());
      

  3.   

    楼上的,你的是ds.Tables.Clear(),楼主是ds.Clear()。