Tengo una clase con una propiedad decimal & Estoy serializando & deserializando usando JSON.NET. El problema que estoy teniendo es que si digo que el valor decimal es 100000000000023063.0, cuando lo deserializo se convierte a 100000000000023000. He comprobado el JSON &, definitivamente está registrado como 100000000000023063.0..NET/C# problemas de serialización decimal
He mirado en él &
decimal.Parse("100000000000023063.0")
=
100000000000023063.0
pero
var d = (decimal)100000000000023063.0
=
100000000000023000
Puedo solucionar este problema almacenando como una cadena & tengo una propiedad que hace decimal.Parse() pero ¿alguien sabe por qué está sucediendo esto?
Gracias mucho por eso. Obtengo el valor "100000000000023063.0" en XML a través de un servicio web. Luego lo analizo y para crear mi clase y serializar la clase usando JSON.NET y almacenarla en una base de datos para referencia futura. Parece que JSON.NET 4.0 corrige el problema con precisión decimal. – LozzaDude