public override byte[] ToBigEndian(BigDecimal value)
        {
            var scale  = value.Scale;
            var number = value.UnscaledValue;

            var int32Converter      = new Int32TypeConverter();
            var bigIntegerConverter = new IntegerTypeConverter();

            var scaleBytes  = int32Converter.ToBigEndian(scale);
            var numberBytes = bigIntegerConverter.ToBigEndian(number);

            var bytes = new byte[scaleBytes.Length + numberBytes.Length];

            Array.Copy(scaleBytes, 0, bytes, 0, scaleBytes.Length);
            Array.Copy(numberBytes, 0, bytes, scaleBytes.Length, numberBytes.Length);

            return(bytes);
        }
예제 #2
0
 public override byte[] ToBigEndian()
 {
     return(Converter.ToBigEndian(_value));
 }