I have a weird problem with reading .xls file using OleDbDataReader.

Basically, it does not see a data in the cell, if the previous cells in the column are empty.

If I move the row with the data at the top of Excel sheet, then everything loads fine. I'm not sure, but I think that it has something to do with the amount of empty cells before the one with data.

Any help or advice will be much appreciated.

有帮助吗?

解决方案

You probably have a connectionstring like this:

<add name="MyApp.Properties.Settings.ExcelConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=&quot;Excel 8.0;IMEX=1;HDR=NO;TypeGuessRows=0;ImportMixedTypes=Text;&quot;;"/>

Notice the 'TypeGuessRows'. It tells Excel how many rows to scan to try to guess the datatypes of the columns. The value 0 (zero) tells it to scan all rows. Does that help you?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top