如何在出错后继续循环?

Lor*_*lix 2 c# .net-4.5

我有一个应用程序运行一个大循环,它读取数据,写入PDF和​​电子邮件文件,一举一动.有时,会出现错误,我必须回溯到导致错误的原因.基本上整个循环都在Try/Catch块中.有两个循环,基本上(伪代码):

try
  // Loop 1
  process 1
    // Loop 2
    process 2
catch
  // Message box error
Run Code Online (Sandbox Code Playgroud)

有没有办法可以继续这个循环,只是跳过错误?也许保存一个例外的日志,以便我以后可以保存?

rae*_*ae1 5

只需try ... catch在循环内使用另一个,

try
  foreach () // Loop one
    try
      foreach () // Loop two
    catch 
      // Log error, or ignore, then it continues loop 1    
catch
  // Message box error
Run Code Online (Sandbox Code Playgroud)

您可以try ... catch根据需要嵌套任意数量的构造; 但是,这会很快增加程序的复杂性,因此请谨慎使用; 并且在可能的情况下,将代码块隔离到函数/方法,每个代码块都是自己的,需要的恢复过程.