Tôi có một lớp có thuộc tính thập phân & Tôi đang tuần tự hóa & deserializing bằng JSON.NET. Vấn đề tôi gặp phải là nếu nói giá trị thập phân là 100000000000023063.0, khi tôi deserialize nó được chuyển đổi thành 100000000000023000. Tôi đã kiểm tra JSON & nó chắc chắn được ghi lại là 100000000000023063.0..NET/C# serial serialization problems
Tôi đã nhìn vào nó &
decimal.Parse("100000000000023063.0")
=
100000000000023063.0
nhưng
var d = (decimal)100000000000023063.0
=
100000000000023000
Tôi có thể giải quyết vấn đề này bằng cách lưu trữ dưới dạng chuỗi & có thuộc tính có dạng thập phân.Parse() nhưng có ai biết tại sao điều này xảy ra không?
Cảm ơn rất nhiều cho điều đó. Tôi nhận được giá trị "100000000000023063.0" trong XML thông qua dịch vụ web. Sau đó tôi phân tích nó và tạo lớp học của tôi và sắp xếp lớp học bằng cách sử dụng JSON.NET và lưu nó trong cơ sở dữ liệu để tham khảo trong tương lai. Có vẻ như JSON.NET 4.0 khắc phục sự cố với độ chính xác thập phân. – LozzaDude