我正在使用最新的ODAC和Entity Framework 4.1。我使用BINARY_DOUBLE类型,它被映射到.NET double。我存储双算术的结果,大多数工作正常,但如果结果是无穷大(double.PositiveInfinity),那么当我SaveChanges时,Oracle会抛出此错误:
ORA-01426:数字溢出
由于Oracle BINARY_DOUBLE据称支持+ Inf,-Inf和NaN(此处记载:http://docs.oracle.com/cd/E13085_01/doc/timesten.1121/e13070/types.htm),为什么这不能通过EF正常工作? (NaN确实有效,它只是有这个问题的无穷大)。
有没有办法在保存之前“修复”结果,使其在Oracle中存储为+ Inf?