Excel中的混合数据类型,IMEX不起作用

rof*_*s91 1 c# oledb datatable xls

我正在尝试将xls导出到datatable中.下面是我的连接字符串.

string path = //xls source path
OleDbConnection MyConnection = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; Data Source='" + path + "';Extended Properties='Excel8.0;IMEX=1;TypeGuessRows=0;HDR=No;ImportMixedTypes=Text'");
Run Code Online (Sandbox Code Playgroud)

我设置IMEX=1和所有其他扩展属性,因为我必须处理混合数据类型.

即使我设置连接,但我仍然产生错误.

没有错误信息,但不一致的行(谁不遵循大多数数据类型被设定,而不是为null).

谁能告诉我我错过了什么?顺便说一句,我正在使用OleDbDataAdapter&Fill(DataSet)方法.

Pet*_*lin 6

你确定TypeGuessRows=0;并且ImportMixedTypes=Text;正在使用连接字符串,不应该在registry(HKEY_LOCAL_MACHINE\SOFTWARE\[Wow6432Node\]Microsoft\Jet\4.0\Engines\Excel)中进行修改吗?AFAIK此设置从注册表中读取.ImportMixedTypes=Text通常默认情况下,但是TypeGuessRows=8,应该0在连接字符串中设置为.