Resharper建议使用上面的示例,而不是下面的示例。然而,我认为首先会创建一个新的项目列表,因此在调用runstoredprocedure之前将运行所有_executeFuncs。
通常这不是问题,但异常很容易发生,如果我的假设是正确的,那么尽管函数已经运行,但我的数据库也不会更新?
foreach (var result in rows.Select(row => _executeFunc(row)))
{
RunStoredProcedure(result)
}
或者
foreach(var row in rows)
{
var result = _executeFunc(row);
RunStoredProcedure(result);
}
_executeFunc
内部也可能会发生异常? - Alexandru