public DataSet ABC()
{
 try
 {
 Dataset ds=new Dataset()
 ds = sh.ExecDataset(sql);
 return ds
 }
 catch(Exception e)
 {
  throw new Exception(e.Message);
 }
 finally
 { 
  ds.Dispose();
 }
}我上面加了ds.Dispose(),有必要吗?

解决方案 »

  1.   

    其实可以不用  主要把Connection连接关了
      

  2.   


    完全不用 接分 如果在finally 加上也好
      

  3.   

    new的时候已经是一个新的dataset了
      不需要Dispose
      

  4.   

    没有必要Dispose。即使调用了Dispose也不一定被回收。交给GC比较好。
      

  5.   

    没有Close方法的对象调用Dispose,是画蛇添足。
      

  6.   

    DataSet应该不具有非托管资源,所以没必要Disponse,即使你这样做也,效果也等于没做一样。