If a select statement returns a number field with precision greater then the max precision of a .net decimal it throws an InvalidCastException from Oracle.ManagedDataAccess.Client.OracleDataReader.GetDecimal().
A simple way this can be seen is:
OracleCommand cmd = // get the command
cmd.CommandText = "SELECT 1/3 FROM DUAL";
object x = cmd.ExecuteScalar(); // InvalidCastException
Whilst this can obviously be fixed by using CAST or ROUND in the query are there any plans to address this problem in the driver?
Tested using 64-bit ODAC 12c Release 4 (12.1.0.2.4).