我一直遇到这个错误:
CsvHelper.dll中发生未处理的"CsvHelper.CsvReaderException"类型异常
附加信息:没有为"RPS_String_Parse.Program + FormattedRow"类型映射属性.
但我相信我正确地遵循了文档.在引用"入门"部分之后我实现了这个:
using (var sr = new StreamReader(filePath))
{
var csv = new CsvReader(sr);
var records = csv.GetRecords<FormattedRow>();
foreach (var record in records)
{
Console.WriteLine(record.Address1);
}
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
和我的班级:
public class FormattedRow
{
public string IDOrderAlpha;
public string IDOrder;
public string AddressCompany;
public string Address1;
public string Address2;
public string AddressCity;
public string AddressState;
public string AddressZip;
public string AddressCountry;
public string ShipMethod;
public string ContactEmail;
public string ContactName;
public string ServiceRep;
public string CustomerPuchaseOrder;
}
Run Code Online (Sandbox Code Playgroud)
我觉得这应该有用,因为文档说明:
自动映射
如果您不提供映射文件,将使用自动映射.自动映射将按照它们出现的顺序映射类中的属性.如果属性是自定义类,它将按照它们出现的顺序递归地映射该类的属性.如果自动映射器命中循环引用,它将停止参考分支
我错过了什么?
Jon*_*n B 13
文档说明它将映射到Properties.你的班级有Fields.进行此更改:
public class FormattedRow
{
public string IDOrderAlpha { get; set; }
// add { get; set; } for all
}
Run Code Online (Sandbox Code Playgroud)
这会将您的字段更改为"自动属性".
| 归档时间: |
|
| 查看次数: |
2682 次 |
| 最近记录: |