C# 怎么把JSON解析到对象

Prosperou 2012-09-15 04:51:40
{"response":{"errorCount":0,"orderList":{"order":[{"orderAmount":119,"orderCode":"120914FAYKSR","orderCreateTime":"2012-09-14
16:46:21","orderDeliveryFee":0,"orderId":75483957,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-14
17:05:13"},{"orderAmount":119,"orderCode":"120914TB23GA","orderCreateTime":"2012-09-14
23:51:25","orderDeliveryFee":0,"orderId":75566567,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-15
00:08:14"}]},"totalCount":2}}

C# 怎么把这段JSON数据解析为order对象,然后更新到数据库中啊,求教

能写个示例吗
...全文
3028 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
姓名不能为空 2014-02-15
  • 打赏
  • 举报
回复
protected void Page_Load(object sender, EventArgs e) { var jdata="[{\"id\":0,\"email\":\"abccd\",\"age\":0},{\"id\":1,\"email\":\"abc1\",\"age\":2}]"; // string jsonData = context.Request.Form["jdata"]; //取得这个json字符串 string jsonData = jdata; //取得这个json字符串 string datastr = ""; //调用上面这个方法,把json字符串传进去,就得到一个对象集合了 List<Person> DataReust = JSONToObject<List<Person>>(jsonData); for (int i = 0; i < DataReust.Count; i++) { int id = DataReust[i].id; string email = DataReust[i].email; int age = DataReust[i].age; datastr += "id:" + id + " email:" + email + " age:" + age+" "; } } //做一个类id,email,age和json格式一致 public class Person { public int id { set; get; } public string email { set; get; } public int age { set; get; } } //这个一个反序列化的方法,用于返回泛型集合 public static T JSONToObject<T>(string jsonText) { JavaScriptSerializer jss = new JavaScriptSerializer(); return jss.Deserialize<T>(jsonText); }
Prosperou 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
http://json.codeplex.com/

http://msdn.microsoft.com/zh-cn/library/system.runtime.serialization.json.datacontractjsonserializer(v=vs.100).aspx
[/Quote]
兄弟,这个方便弄一个示例吗?
Prosperou 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

请参考 C#Json转对象
[/Quote]
哥们,还是没用啊, 我这个格式跟那个不一样{"response":{"errorCount":0,"orderList":{"order":[{"orderAmount":119,"orderCode":"120914FAYKSR","orderCreateTime":"2012-09-14 16:46:21","orderDeliveryFee":0,"orderId":75483957,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-14 17:05:13"},{"orderAmount":119,"orderCode":"120914TB23GA","orderCreateTime":"2012-09-14 23:51:25","orderDeliveryFee":0,"orderId":75566567,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-15 00:08:14"}]},"totalCount":2}}
yonglaixiazaide 2012-09-17
  • 打赏
  • 举报
回复
定义一个 和你json里一样的示例,主要是字段一样
Chobitssp 2012-09-17
  • 打赏
  • 举报
回复
http://json.codeplex.com/
rczjp 2012-09-17
  • 打赏
  • 举报
回复
请参考 C#Json转对象
Prosperou 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

C# 解析JSON的方法:

C# code

var json = {"你的JSON"};
var orders = json.Deserialize<Order>(json);
[/Quote]
兄弟,这样还是不行啊
yonglaixiazaide 2012-09-17
  • 打赏
  • 举报
回复
你这个是嵌套的结构 定义一个response类有errorCount,orderList,totalCount3个属性
其中orderList 是List<order> 定义order类有:":"orderAmount":119,"orderCode":"120914FAYKSR","orderCreateTime":"2012-09-14 16:46:21","orderDeliveryFee":0,"orderId":75483957,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-14 17:05:13

这中的属性就OK了
zhouxingyu896 2012-09-17
  • 打赏
  • 举报
回复
支持2楼的呢
Prosperou 2012-09-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
http://json.codeplex.com/

http://msdn.microsoft.com/zh-cn/library/system.runtime.serialization.json.datacontractjsonserializer(v=vs.100).aspx
[/Quote]
哥们,方便弄一个demo吗,这种JSON格式的还是有点没搞明白
zg_heng 2012-09-17
  • 打赏
  • 举报
回复
http://www.cnblogs.com/pen-ink/archive/2011/10/06/2199715.html
这个推荐一下。希望能帮助你。
OObigO 2012-09-16
  • 打赏
  • 举报
回复
C# 解析JSON的方法:


var json = {"你的JSON"};
var orders = json.Deserialize<Order>(json);
瑞卡哥哥 2012-09-16
  • 打赏
  • 举报
回复

var json = {"response":{"errorCount":0,"orderList":{"order":[{"orderAmount":119,"orderCode":"120914FAYKSR","orderCreateTime":"2012-09-14
16:46:21","orderDeliveryFee":0,"orderId":75483957,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-14
17:05:13"},{"orderAmount":119,"orderCode":"120914TB23GA","orderCreateTime":"2012-09-14
23:51:25","orderDeliveryFee":0,"orderId":75566567,"orderNeedInvoice":2,"orderStatus":"ORDER_TRUNED_TO_DO","productAmount":119,"updateTime":"2012-09-15
00:08:14"}]},"totalCount":2}};
var orders = json.Deserialize<Order>(json);
aloxy 2012-09-15
  • 打赏
  • 举报
回复
正则表达式

110,825

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧