我有一个业务对象类,其中包含在构造函数中填充的私有字段
private int mP_Id;
private int mP_MerchantId;
private int mP_ProductId;
private decimal mP_Price;
private int mP_StockCount;
private string mP_Condition;
private bool mP_Published;
private int? mP_ConditionId;
private string mP_URL;
private string mP_CurrencyCode;
private DateTime? mP_DateUpdated;
private bool mP_Active;
private string mP_MerchantProductIdentifier;
private int? mP_ApiProductFoundId;
我有一个 CSV 文件,其中包含这些列,但还有其他列将在业务逻辑中用于从另一个数据库表中检索正确的 mP_ProductId。
如果我使用CsvContext.Read<T>()
它会抛出一个异常,告诉我在我的业务对象中找不到额外的列。
var cc = new CsvContext();
var relationships = cc.Read<MerchantProductRelBO>(file.FilePath, inputFileDescription);
我试图放置这些额外的字段并重载 MerchantProductRelBO.custom.cs 中的构造函数,但它仍然没有使用重载的构造函数并引发了相同的异常。我不能在 MerchantProductRelBO.cs 中执行此操作,因为只要数据库结构发生更改,该文件就会被覆盖。
我是否只需要放弃 LinqToCsv 库并编写一个手动解析器来从 CSV 读取,或者有没有办法让它解析额外的 BO 列而不抛出异常?