Я получаю исключение арифметического переполнения при попытке преобразовать следующий пространственный объект оракула в набор координат (десятичных дробей) в C #, используя (decimal) OracleUdt.GetValue()
MDSYS.SDO_GEOMETRY(2001, 1041001,
MDSYS.SDO_POINT_TYPE(-2.89957214912471,1.56043985049899E-15,NULL),NULL,NULL)
Согласно Документация Oracle Вероятно, это связано с тем, что одно из десятичных значений превышает диапазон точности .NET, равный 28 десятичным.Данные, которые превышают этот предел точности в нашей базе данных, крайне редко , и преобразование должно быть максимально эффективным.
Каков наилучший вариант для обработки этого исключения путем изящного усечения результата, еслиэто превышает максимальную точность?