不需要,GC会帮你清,多此一举!
要,虽然c#会自动清理垃圾,
但引用类型的对象如果不用就自己清了吧。
用不用Dispose关键看这个类有没有继承IDispose接口。只要有,就可以使用:
using() {...}来实现自动调用Dispose方法。这是一个好的习惯。
using(SqlConnection conn = new SqlConnection(...)){
//其他语句
using(SqlCommand cmd = new SqlCommand(...)) {
//其他语句
using(SqlDataReader rdResult = SqlCommand.ExecuteReader()){
//其他语句
}
}
}
释放就不用了 SqlDataReader一定要关闭就是了
首先,你知道Dispose方法究竟是做什么的,该怎么用吗?
Dispose模式都理解了吗?
托管资源释放和非托管资源释放搞的清是怎么回事吗?
如果是,你应该不会问这个问题...