我應(yīng)該釋放()數(shù)據(jù)集和數(shù)據(jù)表嗎?DataSet和DataTable都實(shí)現(xiàn)了IDisposable,因此,根據(jù)傳統(tǒng)的最佳實(shí)踐,我應(yīng)該調(diào)用它們的dist()方法。然而,根據(jù)我到目前為止所讀到的,DataSet和DataTable實(shí)際上沒有任何非托管資源,因此Dispose()實(shí)際上并不能做很多事情。另外,我不能就這么用using(DataSet myDataSet...)因?yàn)镈ataSet有一個(gè)DataTable集合。因此,為了安全起見,我需要迭代myDataSett.ables,處理每個(gè)DataTable,然后釋放DataSet。那么,在我的所有數(shù)據(jù)集和DataTable上調(diào)用dist()值得嗎?增編:對于那些認(rèn)為應(yīng)該處理數(shù)據(jù)集的人:一般來說,處理的模式是使用using或try..finally,因?yàn)槟MWCDispose()將被調(diào)用。然而,對于一個(gè)集合來說,這變得非常丑陋。例如,如果其中一個(gè)釋放()調(diào)用引發(fā)異常,您會(huì)做什么?你是否吞下它(這是“壞的”),這樣你就可以繼續(xù)處理下一個(gè)元素了嗎?或者,您是否建議我只調(diào)用myDataSet.Disposes(),而忘記如何在myDataSett.ables中處理DataTable?
我應(yīng)該釋放()數(shù)據(jù)集和數(shù)據(jù)表嗎?
FFIVE
2019-06-19 11:01:26