2012-03-21 48 views
0

我有一個日誌記錄類,它將條目存儲在數據表dt中。然後我使用SQLBULKCOPY將該dt寫入sql表。基本的東西。問題是,我想只在dt中有50個條目時調用SQLBULKCOPY。問題是,如果我完成了(有意或無意,就像是使用log類的代碼塊拋出一個異常一樣)與日誌記錄對象並且dt中仍有15行?敲定調用類方法

我想要做的是在日誌類本身中有一些「finalize」代碼,它調用日誌類自己的方法,使用sqlbulkcopy從dt中寫入這15條記錄。我知道重寫Dispose/Finalize方法真的不適合我的情況。而且使用某種外部到日誌記錄的方法是不可行的,比如總是可以調用僞造最終化方法的巨大嘗試/捕獲。 (原因可能是4層或5層嵌套類有很多嘗試/捕獲,使用等)

任何想法?

回答

0

爲什麼不實施IDisposable模式?

如果您故意關閉,可以調用.Dispose,如果您意外關閉,可以清理.Dispose(False)。