VS2013 WEBAPI项目直接就可以返回DATATABLE,并且IIS会处理好返回JSON字符串,不需要在服务端做任何额外的转换工作。
但我在ANDROID里调用时发现不能把JSON字符串转换成JSONObject
因为JSON字符串里要有个总的对象名
默认DATATABLE JSON如下
[{"ID":1,"J经度":11.84544,"W纬度":127.19699,"H海拔":67.65486,"Y用户ID":null,"C创建时间":"2013-11-14T18:30:41.35"}]
而JSONObject可以解析的字符串是
{"POS":[{"ID":1,"J经度":11.84544,"W纬度":127.19699,"H海拔":67.65486,"Y用户ID":null,"C创建时间":"2013-11-14T18:30:41.35"}]}
POS为对象名
解决办法
JSONObject jsonObject = new JSONObject("{\"POS\":"+jsonstring+"}"); //创建JSONObject对象
本文介绍了VS2013 WebAPI项目中直接返回DataTable时JSON格式的问题,即返回的JSON字符串缺少顶层对象名,导致Android客户端无法正确解析。文章提供了修改JSON字符串格式的方法,通过添加顶层对象名使JSON字符串符合标准格式。
416

被折叠的 条评论
为什么被折叠?



