Problema con OleDbDataReader in lettura file excel

mercoledì 29 ottobre 2008 - 14.18

lupussse Profilo | Newbie

Salve ho un file excel di 24 colonne da leggere con un OleDbDaraReader. Tuttavia facendo la Rd.GetValue(i) dove Rd è il mio OleDbDaraReader e i è il numero della colonna da leggere, alcune volte riesco a leggere il dato contenuto in excel altre volte mi ritorna vuoto (anche se invece è valorizzato). Da cosa può dipendere?

Riporto il codice:

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + "C:\\Sviluppo\\HF\\HFImpiantoLoad\\DatiMPS.xls;" +
"Extended Properties=Excel 8.0;";

OleDbConnection connEXCEL = new OleDbConnection(strConn);
string sql = "SELECT * FROM [PD_Provvedimenti$]";
OleDbCommand cmd = new OleDbCommand(sql, connEXCEL);

try
{
connEXCEL.Open();
OleDbDataReader rd = cmd.ExecuteReader();

while (rd.Read())
{
Param = Parameters["CD_STATO"];
Decimal CdStato = 0;
if (Decimal.TryParse(Rd.GetValue(13).ToString(), out CdStato))
{
Param.Value = CdStato;
}
else
{
throw new Exception("Il campo CD_STATO contenuto nel file excel non è Decimal. CD_STATO: " + Rd.GetValue(13).ToString());
}
}


il getvalue mi restituisce vuoto invece nella 13esima (che poi è la 14esima in quanto l'indice delle colonne parte da 0) colonna del file excel ho un bellissimo 1!!!!!


Da cosa può dipendere?

HO risolto aggiungendo IMEX=1 nella connectionString
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5