【发布时间】:2014-11-26 20:25:31
【问题描述】:
Resharper 建议使用顶部示例,而不是底部示例。但是我的印象是首先会创建一个新的项目列表,因此所有 _executeFuncs 都将在调用 runstoredprocedure 之前运行。
这通常不是问题,但是很容易发生异常,如果我的假设是正确的,那么尽管已经运行了函数,我的数据库也不会更新??
foreach (var result in rows.Select(row => _executeFunc(row)))
{
RunStoredProcedure(result)
}
或者
foreach(var row in rows)
{
var result = _executeFunc(row);
RunStoredProcedure(result);
}
【问题讨论】:
-
您的意思是
_executeFunc内可能发生异常? -
了解延迟执行。
-
抱歉,是的,executeFunc(row) 容易抛出错误