【发布时间】:2012-02-03 14:26:46
【问题描述】:
我正在使用 Linq to Excel 库来访问其中一个 Excel 工作表,我遇到的问题是,我的调用无法找到具有特定名称的列。
public IQueryable<Cell> getExcel()
{
var excel = new ExcelQueryFactory();
excel.FileName = @"C:\Users\Timsen\Desktop\QUOTATION.CSV";
var indianaCompanies = from c in excel.Worksheet() select c["ARTICLE TEXT"];
return indianaCompanies;
}
错误:
base {System.SystemException} = {"'ARTICLE TEXT' 列名不存在。有效的列名是 'QUOT NO;DEBTOR;ITEM;ART NO;HWS NO#;BRANCH PRICE;QTY;PR;ARTICLE T '、'F2'、'F3'、'F4'、'F5'"}
Excell 中的表格名称
报价
没有
债务人
项目
艺术
没有
HWS
没有。
分店价格
数量
公关
文章正文
类型名称
销售价格
QT%
DIS
金额
UNI
B
ARTG
补充
职责
更新 Excel 示例:
【问题讨论】:
-
ARTICLE TEXT 在错误日志中被引用为 ARTICLE T 。你试过了吗?
-
我可以看到,但是如何解决呢?在 Excel 中名称是 ARTICLE TEXT 但看起来 linqtoexcel 只返回列文本名称的一部分
-
我对@987654324@库很熟悉,但是您是否尝试过使用OledbDataAdapter?
-
@AnuragRanjhan - 我们能否建议使用 JET 的解决方案,这些解决方案将来在 x64 操作系统上将不会也无法工作?他应该使用 ACE 或使用他正在使用的方法。他当前的问题是我怀疑的格式错误的标头值。
-
@Ramhound 我不知道 JET 不能正常工作。谢谢