C# CSVHelper说没有地图存在
我试图让CSVHelper读取一些文件,但它一直告诉我没有为我的自定义类映射属性。然而,当我使用调试器查看时,它似乎确实存在并且正确,所以我感到困惑 这里有一些代码C# CSVHelper说没有地图存在,c#,csv,map,mapping,csvhelper,C#,Csv,Map,Mapping,Csvhelper,我试图让CSVHelper读取一些文件,但它一直告诉我没有为我的自定义类映射属性。然而,当我使用调试器查看时,它似乎确实存在并且正确,所以我感到困惑 这里有一些代码 CsvReader csv = new CsvReader(new StreamReader(ms)); csv.Configuration.HasHeaderRecord = true; csv.Configuration.IsHeaderCaseSensitive = false; csv.Configuration.SkipE
CsvReader csv = new CsvReader(new StreamReader(ms));
csv.Configuration.HasHeaderRecord = true;
csv.Configuration.IsHeaderCaseSensitive = false;
csv.Configuration.SkipEmptyRecords = true;
csv.Configuration.TrimFields = true;
csv.Configuration.TrimHeaders = true;
csv.Configuration.WillThrowOnMissingField = false;
csv.Configuration.RegisterClassMap<SampleMap>();
readSamples = csv.GetRecords<Sample>().ToList(); //breaks here
CsvReader csv=新的CsvReader(新的StreamReader(ms));
csv.Configuration.HasHeaderRecord=true;
csv.Configuration.ishaderCaseSensitive=false;
csv.Configuration.skipmptyrecords=true;
csv.Configuration.TrimFields=true;
csv.Configuration.TrimHeaders=true;
csv.Configuration.WillThrowOnMissingField=false;
csv.Configuration.RegisterClassMap();
readSamples=csv.GetRecords().ToList()//在这里休息
这是我的示例和SampleMap类的截断版本
namespace Parser.Models
{
public class Sample
{
public string Number { get; set; }
public string Discussion { get; set; }
public string OrderNumber { get; set; }
}
public sealed class SampleMap : CsvClassMap<Sample>
{
public SampleMap()
{
Map(m => m.Discussion).Name("Cases::CaseDiscussion");
Map(m => m.OrderNumber).Name("Orders::OrderNumber");
}
}
}
namespace Parser.Models
{
公共类样本
{
公共字符串编号{get;set;}
公共字符串讨论{get;set;}
公共字符串OrderNumber{get;set;}
}
公共密封类样本映射:CsvClassMap
{
公共样本映射()
{
Map(m=>m.Discussion).Name(“案例::案例讨论”);
Map(m=>m.OrderNumber).Name(“Orders::OrderNumber”);
}
}
}
缺少什么?错误在我的csv文件中,而不是我的代码中。请不要理会。如果您遇到类似问题,请确保检查您的文件。:) 请问您的问题是什么?我也被困在一切看起来非常现实和正确,但它不会地图!我也尝试过按索引进行映射,消除了拼写/间距问题。我指的是该文件的.xmlx版本,而不是.csv文件(如果内存可用的话)。真是尴尬。我在映射到的类中有私人setter!因此浪费了很多时间。