【发布时间】:2011-05-27 15:51:00
【问题描述】:
我正在使用json.net 来序列化和反序列化一个对象。唯一的问题是,当我尝试反序列化对象时,它无法解析它刚刚创建的 double 值。序列化时,它生成十进制字符.,但是当它尝试反序列化时,它期望,
这里的问题可能是我在设备上的应用程序中运行反序列化。并且设备可能设置为与创建 JSON 的服务器不同的本地化。
那么无论本地化格式是什么,是否可以强制json.net 将double 反序列化为十进制字符.?
edit 在 json.net codeplex 中有一个错误,但情况正好相反。我尝试将我的类型从double 切换到decimal,现在它可以完美运行...
edit2:
class Spot
{
int Id;
string Name;
double Distance;
double Rating;
}
我猜默认文化是系统文化,对吧?哪个是挪威语(nb-NO)
Here's the output. 如您所见,我正在发送带有 , 的 inn doubles 用于 latlong 值,这些值在服务中被解析为 double。
【问题讨论】:
-
你能发布课程吗,你是如何反序列化/序列化的,你的应用程序在什么文化下运行?这听起来像是一个需要修复的错误。
-
@James Newton-King:我用一些代码示例更新了我的问题。
标签: c# formatting json.net