-2
muss ich Daten aus Excel-Arbeitsblatt zugreifen, aber ich habe ein Problem, während die Daten kopieren (aus Excel)Fehler beim Zugriff auf Excel-Datentabelle
try
{
string strPath = FileName;
DataSet ds = new DataSet();
string sConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; " + "Data Source=" + strPath + "; " + "Extended Properties=Excel 8.0;";
OleDbConnection objConn = new OleDbConnection(sConnectionString);
objConn.Open();
OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [" + TableName + "] ", objConn);
OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
objAdapter1.SelectCommand = objCmdSelect;
objAdapter1.Fill(ds);
objAdapter1.Dispose();//DEBUGGER SKIP FROM HERE
objConn.Close();
return ds.Tables[0];
}
catch (Exception ex)
{
//Log your exception here.//
return (DataTable)null;//AND THEN JUMP TO HERE
}
das Problem ist, während das Debuggen Dataset nach Zeile objAdapter1.Fill(ds);
Debugger überspringen die restliche Zeile und natürlich der Datensatz gibt null zurück, bitte helfen.
Überprüfen Sie die Ausnahme. – CodeCaster
Behalten Sie den Haltepunkt in der Dispose() -Zeile und prüfen Sie, ob der Datensatz gefüllt ist oder nicht? und überprüfen Sie auch die Ausnahme, die Sie erhalten. –
habe 'Exception geworfen:' System.Data.OleDb.OleDbException 'in System.Data.dll' während des Debuggens. und ich setze Haltepunkt bei Dispose(), füllt das Dataset nicht und gibt die Ausnahme 'System.NullReferenceException' zurück (ich denke, weil das Dataset leer ist) –