ACE OLEDB 12.0 属性 HRD=NO 不起作用

ACE OLEDB 12.0 property HRD=NO doesn't work

我想用标准的 header 得到完整的 sheet,比如 "F1, F2, F3 etc."
但这仅在第一行为空且第一行包含一些文本时才可行,它在 table 的 header 中被操作。 选项 HRD=NO 对此行为没有任何影响,这很奇怪,也许是一些错误 ???

我的连接是这样的:

string conn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\example.xlsx;
Extended Properties='Excel 12.0;HRD=NO;IMEX=1';

当对 Excel 使用 ADO.NET 时,连接字符串中没有 HRD 选项。可能您想像这样使用 HDR 选项:

string conn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\example.xlsx;
                Extended Properties='Excel 12.0;HDR=NO;IMEX=1';

HDR 选项决定第一列包含的内容,如果您将其设置为 NO 则第一列将被视为数据,否则将被视为列 header ( HDR=YES).

参考:ADO.NET provider for Excel - connection strings