首页 新闻 会员 周边

关于对象转换为json格式以后,本地化问题。

0
悬赏园豆:10 [已解决问题] 解决于 2012-12-10 17:23

系统环境为 西班牙系统

1.html首页通过ajax请求后台数据来填充datagrid。

2.后台通过 JavaScriptSerializer.Serialize  的方法把对象转换为json以后传出

 

问题:在西班牙系统中,C#中的decimal类型,在调用上面2中的方法以后,会把小数点变为逗号。例如 正确{ "lat":30.1123123,"lng":120.1230123} 转换以后变成错误的 { "lat":30,1123123,"lng":120,1230123}  导致前台json解析出错。

无奈法:

1.所有用到的地方自己拼接json字符串,不要直接对对象格式化。可是地方太多。

请大神们给个解决方案。谢谢了!!!!

来自北方的主页 来自北方 | 菜鸟二级 | 园豆:399
提问于:2012-12-10 14:35
< >
分享
最佳答案
0

一般情况下,序列化下,你忽略语言国家习惯就可以啊,

CultureInfo.InvariantCulture 不依赖区域性语言习惯,你看看那个类帮助。

 

或者用其它第三方的序列化工具,性能比微软自带的还高些。

 

收获园豆:3
amityat | 菜鸟二级 |园豆:476 | 2012-12-10 16:59
其他回答(2)
0

{ "lat":“30.1123123”,"lng":“120.1230123”}

收获园豆:2
积累轩 | 园豆:216 (菜鸟二级) | 2012-12-10 15:26

这种方式就是没有办法的办法了。可是地方太多。自己拼接太麻烦。还会影响程序。

支持(0) 反对(0) 来自北方 | 园豆:399 (菜鸟二级) | 2012-12-10 15:46
0

你可以在JSON序列化直线,设置你的线程的

CurrentUICulture  为英文
应该就不会生成了,了
http://msdn.microsoft.com/en-us/library/system.threading.thread.currentculture.aspx
收获园豆:3
chenping2008 | 园豆:9836 (大侠五级) | 2012-12-10 15:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册