0

我有一个foreach循环遍历实体框架结果的循环。每个结果都通过一个函数传递。所以为了捕捉任何错误,我有一个try/catch块设置。

像这样的东西:

foreach (var resetReq in query)
{
    try
    {
        Console.WriteLine("Attemtping password reset for: " + resetReq.uname);
        if (adTools.resetPassword(resetReq.uname, resetReq.agentUCID))
        {
            Console.WriteLine("Password reset for: " + resetReq.uname);
            using (var updateDB = new resetDB())
            {
                Request r = updateDB.Requests.First(x => x.id == resetReq.id);
                r.reqCompletedDate = DateTime.Now;
                r.completed = 1;

                updateDB.SaveChanges();

                Console.WriteLine("Reset record for: " + resetReq.uname + 
                                  " updated successfully to reflect completion.");
            }
        }
    }
    catch (Exception ex)
    {
        mailFunctions mailFunc = new mailFunctions();
        mailFunc.sendMail(ex);
        continue;
    }
}

我的问题是,continue我的 catch 块中的语句会正常运行吗?这意味着一旦抛出异常并且我的邮件功能被触发,它会继续循环吗?

4

1 回答 1

4

continue意志奏效。

但是,它是多余的。您根本不需要continue,因为块之后没有代码catch,由于任何异常被捕获,需要跳过。

于 2014-11-04T06:23:36.593 回答