無効な値がDataRowに格納されたときに、例外をキャッチしようとしています。テキストファイルから値を読み取っているので、そこに何でも保存できます。次のコードからInvalidCastExceptionをキャッチできることを望んでいました...
try
{
// Store the values into the Data Row
DataRow row = dataset.Tables["Table"].NewRow();
for (int i = 0; i < fieldCount; i++)
row[i] = values[i];
dataset.Tables["Table"].Rows.Add(row);
}
catch (InvalidCastException castException)
{
return false; // Not a serious problem...just log the issue
}
catch (Exception e)
{
throw e; // A more serious problem occured, so re-throw the exception
}
問題は、無効な値をDataRowに格納する(int用に定義された列に "Hello"を格納する)と一般的な例外(System.Exception)がスローされるため、try/catchブロックにキャッチされないようです...それがMSDNのドキュメントと一致しているかどうかを確認してください。