Вот мой код:OleDataAdapter Наполните Метод Возвращение Пустые строки в таблице данных
public static DataTable GetDataFromSpreadsheet(OleDbConnection conn)
{
DataTable dt = new DataTable();
OleDbCommand cmd = new OleDbCommand("SELECT * FROM [Sheet1$]", conn);
conn.Open();
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(dt);
conn.Close();
return dt;
}
Когда этот метод вызывается, я не получаю сообщение об ошибке на всех! Когда я помещаю часы в таблицу данных (dt), я вижу, что он пуст. Нет заголовков строк, а строки пустые. Я знаю, что запрос действителен до некоторой степени, потому что Rows.Count on dt возвращает количество строк в листе, который я запрашиваю.
Что я могу делать неправильно?
Спасибо за помощь!
EDIT: Вот моя Строка подключения
<add name="EXCEL" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;
Data Source={0};
Extended Properties='Excel 8.0;
HDR=Yes; IMEX=1;'" />
Я помещаю местоположение файла вместо {0}
Как вы можете получить Rows.count через DT, когда ваш DataTable пуст? –
Я просматриваю код в VS2013. Когда я добираюсь до Da.fill (dt), я смотрю на переменную dt, а число строк показывает количество строк. Однако, если я смотрю на содержимое строк, они пусты. –
положить точку останова на da.fill (dt); и проверите ли вы dt после выполнения этой строки? проверить ваш запрос также в вашей базе данных, может быть, у вас нет строк в вашей базе данных? –