【问题标题】:CSVHelper Passing a value to the MapClassCSVHelper 将值传递给 MapClass
【发布时间】:2020-12-13 12:31:55
【问题描述】:

在源 CSV 中,字段中提供了时间,但不提供日期。有没有办法将日期时间值传递给地图类,这样我们就可以使用 ConvertUsing 将两者结合起来?

伪代码:

csv.Configuration.RegisterClassMap<RhodesMoClassMap>("DateTime");

public MoClassMap(DateTime date)
{
Map(m => m.TimeLastTick).ConvertUsing(row =>
            {
               var timePart = row.GetField("Time last tick");
               var combined = date + timePart;
               return combinedDateTime;
            });
}

我已经看到了一些关于此的问题,但没有示例,并且最后一个线程似乎在几年前消失了。

【问题讨论】:

  • 你能添加一个CSV的例子吗?
  • ZZZZ,Z Company,7:29:54 PM

标签: c# csv csvhelper


【解决方案1】:
csv.Configuration.RegisterClassMap(new RhodesMoClassMap(date));

【讨论】:

  • 我刚遇到类似情况,但是当我添加一个ctor参数时,我得到System.InvalidOperationException: No public parameterless constructor found. at CsvHelper.ReflectionHelper.CreateInstanceDelegate(Type type, Object[] args) at CsvHelper.ReflectionHelper.CreateInstanceWithoutContractResolver(Type type, Object[] args) at CsvHelper.ReflectionHelper.CreateInstance[T](Object[] args) at CsvHelper.Configuration.CsvConfiguration.RegisterClassMap[TMap]()
猜你喜欢
  • 2015-12-09
  • 2014-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多