在解析csv文件时,如何定义特定字段是必填的。本质上,我想确保给定的字段永远不为空,如果为空,则希望抛出异常。以下是映射类:
public sealed class DataMapper : CsvClassMap<DataType>
{
public DataMapper()
{
Map(m => m.Field1).Name("FirstField");
Map(m => m.Field2).Name("SecondField");
Map(m => m.Field3).Name("ThirdField"); // this field should be mandatory
}
}
使用说明:
List<DataType> data;
using (var sr = new StreamReader(localFilePath))
{
var reader = new CsvReader(sr);
reader.Configuration.RegisterClassMap<DataMapper>();
data = reader.GetRecords<DataType>().ToList();
}
目前,我只是按照以下方式检查数据列表中的结果:
var numberOfInvalidRecords = data.Count(data => string.IsNullOrEmpty(data.Field3));
if (nullAccountHolderRecords > 0)
{
//handle
}
我在CSVHelper的文档中找不到内置功能。我有什么遗漏吗?