Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# CsvHelper缺失字段列表_C#_Csvhelper - Fatal编程技术网

C# CsvHelper缺失字段列表

C# CsvHelper缺失字段列表,c#,csvhelper,C#,Csvhelper,借用本帖-。假设我有以下代码: public sealed class DataMapper : CsvClassMap<DataType> { public DataMapper() { Map(m => m.Field1).Name("FirstField"); Map(m => m.Field2).ConvertUsing(m => { return 0; }); // required field

借用本帖-。假设我有以下代码:

public sealed class DataMapper : CsvClassMap<DataType>
{
    public DataMapper()
    {
        Map(m => m.Field1).Name("FirstField");
        Map(m => m.Field2).ConvertUsing(m => { return 0; }); // required field
        Map(m => m.Field3).ConvertUsing(m => { return 1; }); // required field
    }
}
公共密封类数据映射器:CsvClassMap
{
公共数据映射器()
{
Map(m=>m.Field1).Name(“FirstField”);
Map(m=>m.Field2).ConvertUsing(m=>{return 0;});//必填字段
Map(m=>m.Field3).ConvertUsing(m=>{return 1;});//必填字段
}
}
如果我尝试加载csv文件,但字段2和字段3缺失,如何获取缺失字段的列表?我知道我可以检查ConvertUsing语句中是否存在该字段,但是如果我抛出异常,一次只能得到一个

我看过HeaderValidated和MissingFieldFound,但当它们被映射时,就我所知,它们并没有被这些方法处理


有什么想法吗?

我最后添加了一个名为Errors的字段,并在该映射中进行了所有验证

Map(m => m.Errors).ConvertUsing(m => { 
    // do a bunch of validation
    return "all of the errors";
});
这感觉像是重复的工作,因为我仍然需要对ConvertUsing语句进行验证,以用于我的实际字段,但这起到了作用,结果证明还可以