如果存在转换异常,请在日志文件中记录异常

时间:2015-03-11 11:08:46

标签: c# rhino yield-return rhino-etl

如果在迭代文件数据然后继续下一个数据时出现任何转换异常,我需要记录异常消息。

例如,如果输入文件有10条记录,并且由于第7条记录而引发异常。然后我需要产生1-6和8-10的返回行,以及第7条记录的记录异常。

我使用以下代码使用文件数据生成行:

public override IEnumerable<Row> Execute(IEnumerable<Row> rows)
{
    using (FileEngine file = FluentFile.For<SomeDataRecordETL>().From(FilePath))
    {   
        foreach (object obj in file)
        {
            yield return Row.FromObject(obj);
        }
    }
}

1 个答案:

答案 0 :(得分:1)

如果您正在谈论FromObject()引发的异常,那么您可以使用try - catch

foreach (object obj in file)
{
    try
    {
        yield return Row.FromObject(obj);
    }
    catch (Exception ex) // ideally, this should be some specific exception type
    {
        Log(ex);
    }
}