I am trying to use the ConvertUsing method of the ConvertUsing library (v 2.4.0).
I read the documentation about ConvertUsing but can't get it working.
I use a simple class:
public class Test { public long Id { get; set; } public string Title { get; set; } }
With this ClassMap :
public class TestClassMap : CsvClassMap<Test> { public override void CreateMap() { Map(m => m.Id).Name("id").ConvertUsing(row => 11111); Map(m => m.Title).Name("title").ConvertUsing(row => row.GetField("title") + " 123"); } }
My code that uses them creates an instance of the class and then writes it to CSV:
var test = new Test() { Id = 99, Title = "Test title" }; using (var streamWriter = new StreamWriter("test.csv")) { var csv = new CsvWriter(streamWriter); csv.Configuration.RegisterClassMap<TestClassMap>(); csv.WriteRecord(test); }
However, the output file test.csv always has the following format:
id,title 99,Test title
The result I'm looking for is:
id,title 11111,Test title 123
And ConvertUsing ignored. I tried to convert only Id and only Title , but this also does not work.
Any ideas I'm wrong about?
c # csv export-to-csv csvhelper
finoutlook
source share