在我的代码中,一个方法在循环中被反复调用,就像这样:
foreach (var file in files)
{
SomeMethod(file);
}
该方法可能会抛出异常,但我不希望代码在第一个异常后退出循环。
此外,上面的代码是从 Web API 控制器中调用的,因此我需要一种方法将所有异常信息传递回控制器,在那里处理异常(记录异常并返回错误响应给客户端)。
到目前为止,我已经捕获并存储了所有异常在列表中。
var errors = new List<Exception>();
foreach (var file in files)
{
try
{
SomeMethod(file);
}
catch(Exception ex)
{
errors.Add(ex);
}
}
考虑到不能将列表中的所有错误都重新抛出,那么将异常信息返回给控制器的最佳方法是什么?