CsvHelper 将地图中的双精度四舍五入到两个位置

CsvHelper rounding a double to two places in maps

用于映射 类 我有这个。

public sealed class MyMap : ClassMap<MyBase>
{
    public MyMap()
    {
        Map(m => m.EventDate).Index(1);
        Map(m => Math.Round(m.Price,2)).Index(2);
    }
}

有没有一种方法可以在四舍五入时解决这个错误。我知道您可以使用自定义转换器,但这似乎只是为了将输入截断到小数点后两位。

是这样的吗?

public sealed class MyMap : ClassMap<MyBase>
{
    public MyMap()
    {
        Map(m => m.EventDate).Index(1);
        Map(m => m.Price).Index(2).Convert(row => Math.Round(row.Row.GetField<decimal>("Price"),2));
    }
}