我正在尝试使用csv helper解析csv文件
这是我的maping课程
sealed class CSVFileDefinitionMapFinal : CsvClassMap<CSVFileDefinitionFinal>
{
public CSVFileDefinitionMapFinal()
{
Map(m => m.FARM_ID).Name("FRM_ID");
}
}
这是我的项目类
class CSVFileDefinitionFinal
{
public int FARM_ID { get; set; }
}
问题是csv中的FRM_ID
可能有null
。所以当我在上面做mappign时,我有一个例外,即null不能转移到整数。我问的是有没有办法尝试捕获它并在值为空时将值设置为-10。
try和catch应该在maping类中,但在捕获异常后我不知道该怎么做。换句话说,我不知道如何将默认值设置为maping对象
答案 0 :(得分:3)
您可以将该属性设为可空,而非自动:
class CSVFileDefinitionFinal
{
private int _farmId;
public int? FARM_ID
{
get { return _farmId; }
set { _farmId = value == null ? -10 : value.Value; }
}
}
请注意,您需要在该类中定义private int _farmId
成员。
答案 1 :(得分:2)
您只需在映射中添加默认值即可。
Map(m => m.FARM_ID).Name("FRM_ID").Default( -10 );