CsvHelper
に基づいて csv ファイルを生成するために使用していますList
が、値の 1 つを書き込むことは避けたいと思います。ドキュメントに従って、CsvClassMap
無視するフィールドを指定するためにa を使用しました。ただし、値はまだファイルに書き込まれています。
これが私のクラスです:
public class Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string MiddleName { get; set; }
public string LastName { get; set; }
}
これが私のものCsvClassMap
です:
public sealed class PersonClassMap : CsvClassMap<Person>
{
public PersonClassMap()
{
Map(m => m.Id).Index(0).Name("Id");
Map(m => m.FirstName).Index(1).Name("First Name");
Map(m => m.LastName).Index(2).Name("Last Name");
Map(m => m.MiddleName).Ignore();
}
}
そして、これは私が出力を生成するために使用しているコードです:
var persons = new List<Person>
{
new Person {Id = 1, FirstName = "Randall", MiddleName = "Michael", LastName = "Perry"},
new Person {Id = 2, FirstName = "Marigold", MiddleName = "Joanne", LastName = "Mercibar"},
new Person {Id = 3, FirstName = "Sven", MiddleName = "Ergenfein", LastName = "Olafsson"}
};
using (var csvWriter = new CsvWriter(textWriter))
{
csvWriter.WriteRecords(persons);
textWriter.Flush();
}
私の出力は次のとおりです。
ID、名、ミドルネーム、姓 1、ランドール、マイケル、ペリー 2、マリーゴールド、ジョアン、メルシバル 3、スヴェン、エルゲンファイン、オラフソン
の書き込みを停止するにはどうすればよいMiddleName
ですか?