服务之间Json转实体
2016-04-11 16:22
453 查看
今天碰到一个问题。C#调用java服务后序列化转化为实体出现异常。
在网站上显示 部分字段内容为英文变成了小写。
排查后才发现,通过httpclient的方式,调用其他服务的接口后返回字符串全部tolower()。【历史原因无从查证】
盘查了很久发现,在实体中[DataMember(Name="name")] 存在大小写差异。
如:
Json字符串是 {"Name":"name"}
但是实体类中的定义是 [DataMember(Name="name")] public string Name {set;get;}
这样将json字符串转化为实体的时候 就不能正常的序列化,因为转化过程中区分了大小写。
通过这个我也发现,命名规则的重要性,不要随便的修改大小写,因为一些语言(java、C#等)上的差异
或者是程序员本身的编程习惯问题导致一些往往很难发现的问题。
在网站上显示 部分字段内容为英文变成了小写。
排查后才发现,通过httpclient的方式,调用其他服务的接口后返回字符串全部tolower()。【历史原因无从查证】
盘查了很久发现,在实体中[DataMember(Name="name")] 存在大小写差异。
如:
Json字符串是 {"Name":"name"}
但是实体类中的定义是 [DataMember(Name="name")] public string Name {set;get;}
这样将json字符串转化为实体的时候 就不能正常的序列化,因为转化过程中区分了大小写。
通过这个我也发现,命名规则的重要性,不要随便的修改大小写,因为一些语言(java、C#等)上的差异
或者是程序员本身的编程习惯问题导致一些往往很难发现的问题。
相关文章推荐
- jsoncpp开源库简单使用
- 礼拜一log~flexslider埋坑指南 firefox火狐浏览器不支持zoom的解决办法
- JS定时方法介绍
- jsp入门学习2
- 原生js获取鼠标坐标方法全面讲解:clientX/Y,pageX/Y,offsetX/Y,layerX/Y,screenX/Y【转】
- form 转json最佳示例
- 获取时间差:发表评论或者其他内容时显示时间为几秒前,几小时前
- JS需要注意的细节和一些基础知识
- 4.JSON:JavaScript对象表示法
- js创建jsonArray传输至后台及后台全面解析
- jstl--c:choose标签
- javascript HTML5 Canvas实现圆盘抽奖功能
- JSTL中forEach标签中varStatus属性名列表
- js图片从左到右滚动循环
- javaScript动态展示数字
- [ExtJS5学习笔记]第三十三节 sencha extjs 5 grid表格导出excel
- C# 使用Newtonsoft.Json.dll 格式化显示Json串
- 【js】:js中的确认框,提示框和确认框的使用
- 去掉静态文件后面的jsessionid
- 用phantomjs进行web界面自动化测试的几个注意点