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

我正在尝试将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'"); 

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

即使我设置这样的连接,但我仍然产生错误。

没有错误消息 ,但不一致的行(不遵循多数数据类型的行设置为null )。

谁能告诉我我错过了什么? 顺便说一下,我正在使用OleDbDataAdapterFill(DataSet)方法。

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