Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Importing Excel data into C# without first row becoming column names?

I am trying to import data from excel into a datatable using c#. Here is the code I use to do so...

string ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                    "Data Source=" + fileName + "; Jet OLEDB:Engine Type=5;" +
                    "Extended Properties=\"Excel 8.0;HRD=No;IMEX=1;\"";
OleDbDataAdapter SheetAdapter = new OleDbDataAdapter("select * from ["Sheet1"]", conn);
System.Data.DataTable excelData = new System.Data.DataTable();
SheetAdapter.Fill(excelData);
excelData.TableName = "excelData";

foreach (DataRow row in excelData.Rows)
{
   ProcessDataRow(row);
}

When I look at the datatable while debugging the first row of data has become the tables column names. I don't understand why this is happening when I put HDR=No into the connection string. Is there a way to force the DataTable to not take the first row as column names?

like image 859
PICyourBrain Avatar asked Dec 14 '10 02:12

PICyourBrain


1 Answers

The code sample you provided has HRD=No instead of HDR=No

like image 177
thirtydot Avatar answered Sep 25 '22 19:09

thirtydot