如何设置默认值

本文关键字:默认值 设置 何设置 | 更新日期: 2023-09-27 18:17:14

我正在尝试使用csv helper解析csv文件

这是映射类

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。所以当我做上面的映射时,我有一个异常,null不能被转换成整数。我在问是否有一种方法可以尝试捕获它,并在它为空时将值设置为-10。

try和catch应该在映射类中,但我不知道捕获异常后该怎么做。换句话说,我不知道如何将默认值设置为映射对象

如何设置默认值

您可以将该属性设置为可空且非自动:

class CSVFileDefinitionFinal
{
    private int _farmId;
    public int? FARM_ID
    {
        get { return _farmId; }
        set { _farmId = value == null ? -10 : value.Value; }
    }
}

注意你需要在这个类中定义一个private int _farmId成员

您可以为映射添加一个默认值。

Map(m => m.FARM_ID).Name("FRM_ID").Default( -10 );