我真的想把这个从我的脑海中清除。请看下面的代码:
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方法仍将被调用,但返回语句呢?
或者我应该只使用以下代码:
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;
也许应该使用第二个,但我只需要启示 :). 请解释一下。谢谢。