Oracle
 sql >> Datenbank >  >> RDS >> Oracle

BadImageFormatException des .net-Oracle-Anbieters

Visual Studio ist eine 32-Bit-Anwendung, eine 64-Bit-Version existiert nicht. Es hängt von der Zielarchitektur in Ihren Compilereinstellungen ab, ob Sie den 32- oder 64-Bit-Oracle-Client benötigen.

Dann Namespace System.Data.OracleClient ist veraltet für viele Jahre sollten Sie es nicht verwenden. Verwenden Sie den Treiber von Oracle stattdessen.

Schauen Sie sich diese Antwort an, dort habe ich einige Details angegeben:Der Anbieter ist nicht mit der Version des Oracle-Clients kompatibel

Einige weitere Kommentare:

Sie sollten den OracleDataReader schließen/entsorgen nachdem Sie es benutzt haben.

Verwenden Sie Bind-Variablen anstelle von fest codierten Zeichenfolgen:

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;

Dann müssen Sie sich auch nicht um ToString() kümmern Methoden.