CsvHelperライブラリ (v 2.4.0)のConvertUsing
メソッドを使用しようとしています。
ConvertUsingに関するドキュメントを読みましたが、機能しません。
私は単純なクラスを使用しています:
public class Test
{
public long Id { get; set; }
public string Title { get; set; }
}
これで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");
}
}
これらを使用する私のコードは、クラスのインスタンスを作成し、それを 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);
}
ただし、出力ファイルtest.csv
は常に次の形式になります。
id,title
99,Test title
私が探している出力は次のとおりです。
id,title
11111,Test title 123
そして、ConvertUsing
は無視されています。Id
のみ、および のみを変換しようとしましたTitle
が、これも機能しません。
私が間違っているアイデアはありますか?