0

ファイルのデータの反復中に変換例外が発生した場合は、例外メッセージをログに記録し、次のデータを続行する必要があります。

たとえば、入力ファイルに 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);
        }
    }
}
4

1 に答える 1

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);
    }
}
于 2015-03-11T20:21:15.923 に答える