2012-12-05 30 views
0

我記錄下所有生成的sql。現在我想記錄任何異常到同一個文件。何時關閉日誌文件(Linq to SQL)

StreamWriter mLogFile = new StreamWriter(LogFilePath,true){AutoFlush=true}; 

try 
{ 
MyDataContext mdc = new MyDataContext(); 
mLogFile.WriteLine(CurrentDateString); 
mdc.Log = mLogFile; 
BLAH BLAH DB STUFF 
mdc.SubmitChanges(); 
} 
catch(Exception x) 
{ 

} 

我想要的只是當出現異常時,我想將異常信息添加到日誌文件中。 不知道是否可以將catch行寫入catch塊中的文件。 datacontext到底是什麼時候釋放日誌文件?當submitchanges返回?發生異常時會發生什麼情況?任何意見?

回答

1

數據上下文不承擔日誌的所有權。你有責任釋放它。所以我建議將StreamWriter包裝在using區塊中。所以要回答你的問題:是的,你可以寫入catch區塊的日誌(假設你到那時還沒有處理掉StreamWriter)。

+0

謝謝。我不知道db我猜我可以添加一個finally塊,並明確地處理和關閉streamwriter。 – Brian