我收集了一些说客户的对象。客户包含10个属性。我也得到了一个属性列表,它是Customer属性的一个子集,它是字符串数组。仅这些列需要出现在书面CSV中。 我遵循了CSVHelper文档(https://joshclose.github.io/CsvHelper/2.x/#mapping-runtime-mapping),但它似乎已过时。
我的方法如下:
public void WriteToOutputFile(string filePath, IEnumerable<Customer> records, IEnumerable<string> columnsToBeSelected)
{
using (var writer = new StreamWriter(File.Create(filePath)))
{
var csvWriter = new CsvWriter(writer, new Configuration
{
Encoding = Encoding.UTF8,
HasHeaderRecord = true
});
csvWriter.WriteRecords(records);
}
}
现在,此方法会将所有列写入CSV文件。我只需要columnsToBeSelected数组中提供的那些列。