在使用LINQ to Excel解析excel文件时,我得到的输入字符串格式不正确:
var excel = new ExcelQueryFactory(ExcelFileURI);
excel.DatabaseEngine = DatabaseEngine.Ace;
var items = excel.Worksheet<StatusPedido>(sheetName);
List<StatusPedido> list = items.ToList(); //Error points here
StatusPedido是我自己的类,它有5个int属性,每个属性对应于excel文件中的一列,可能导致此错误,但我无法找到错误来自哪个或哪里。
查询不会执行,直到它被枚举,并且使用.ToList()
方法并不显示哪个项目(1600个excel行)甚至导致错误,所以我&#39;我不确定在哪里看。
有没有办法迭代&#39;项目&#39; IQueryable
一个接一个地找到哪一个未能转换为StatusPedido - 从而确定excel中哪个行/单元抛出此错误?
答案 0 :(得分:0)
由于ListaItems
是StatusPedido
尝试:
List<StatusPedido> ListaItems;
Console.WriteLine("Getting articles from excel file");
var excel = new ExcelQueryFactory(ExcelFileURI);
excel.DatabaseEngine = DatabaseEngine.Ace;
//var Items = from c in excel.Worksheet<StatusPedido>(sheetName)
var Items = from c in excel.Worksheet<StatusPedido>(sheetName)
select c;
foreach(var x in items)
{
StatusPedido objData=new StatusPedido();
objData.val1=x.val1;
.
.
.
ListaItems.Add(objData);
}
return ListaItems;