继续进行例外

时间:2009-09-21 08:10:15

标签: c#

我们有一个Windows服务,它执行以下操作 一个。获取特定目录中的文件 湾解密文件 C。拆分文件中的数据 d。将数据插入数据库

截至目前,它以这样的方式实现:在第一个异常时,它将终止进程,导致错误的文件被移出到另一个文件夹。成功处理的文件保留在同一位置。因此,在任何时间点,只处理未生成异常的最顶层文件。其余的都被排除在外。我们被迫频繁重启服务以处理所有文件。现在我们必须改变设计,即使在特定文件出现异常的情况下,我们仍应继续使用其余文件。我们有以下想法

一个。处理完成后,将处理过的文件也移动到其他位置 湾对处理finally块中的文件的相同方法进行递归方法调用。

请建议我们最好的出路。提前谢谢。

1 个答案:

答案 0 :(得分:6)

捕获异常,执行一些日志记录并继续使用其余文件? 我没有看到问题

foreach( File f in filesToProcess )
{
    try
    {
        ProcessFile (f);
        MoveFile (f);
    }
    catch( IOException ex )
    {
        Log ("File could not be processed");
    }
}