Oracle
 sql >> Database >  >> RDS >> Oracle

BadImageFormatException del provider .net Oracle

Visual Studio è un'applicazione a 32 bit, una versione a 64 bit non esiste. Dipende dall'architettura di destinazione nelle impostazioni del compilatore, se è necessario il client Oracle a 32 o 64 bit.

Quindi, spazio dei nomi System.Data.OracleClient è obsoleto per molti anni non dovresti usarlo. Utilizzare il driver di Oracle invece.

Dai un'occhiata a questa risposta, lì ho fornito alcuni dettagli:Il provider non è compatibile con la versione del client Oracle

Qualche altro commento:

Dovresti chiudere/eliminare OracleDataReader dopo averlo usato.

Usa le variabili di associazione invece delle stringhe di codici rigidi:

cmd.CommandText = "Select E.c_Date, E.c_Time, E.l_UID, E.l_TID from tEnter E where E.c_Date>= :sd and E.c_Date<= :ed";
cmd.Parameters.Add("sd", OracleDbType.Date, ParameterDirection.Input).Value = fromDate;
cmd.Parameters.Add("ed", OracleDbType.Date, ParameterDirection.Input).Value = toDate;

Quindi non devi nemmeno preoccuparti di alcun ToString() metodi.