我真的想從我的腦海中解脫出來。請參閱下面的代碼:C#使用語句
using (DataTable resultTable = DBUtility.GetSingleDBTableResult(connectionString, "SELECT * FROM MyDBTable")) {
List<string> resultsList = new List<string>();
foreach (DataRow dataRow in resultTable.Rows) {
resultsList.Add(dataRow[0].ToString());
}
return resultsList;
}
數據表是否被丟棄?有人可以解釋這是如何翻譯成try/catch/finally塊的嗎? MSDN指出,如果發生異常,Dispose方法仍然會被調用,但是return語句呢?
或者我應該使用下面的代碼:
List<string> resultsList = new List<string>();
using (DataTable resultTable = DBUtility.GetSingleDBTableResult(connectionString, "SELECT * FROM MyDBTable")) {
foreach (DataRow dataRow in resultTable.Rows) {
resultsList.Add(dataRow[0].ToString());
}
}
return resultsList;
可能,第二個應該被使用,但我只需要啓蒙:)。請解釋。謝謝。
把你的回報,無論你想,在處置將被稱爲無關。 '使用'是你的朋友! – Chris 2010-07-06 04:29:30