Json反序列化问题(求解C#)如题

步恒者 2011-01-28 02:22:23
C#后台如何反序列化下面的JSON字符串。
使用Newtonsoft.Json.Net.dll 还是不行。相差远
现在想取出这里:
"ADDRESSEE": "woai@boss.com",
"SEX": "2",
"PROVINCECODE": "32",
"CITYCODE": "394",
"AREACODE": "3350",
"POSTALCODE": "",
"ADDRESS": "woai@boss.com",
"MOBILEPHONE": "1325555555",
"EMAIL": "woai@boss.com",
"REGNAME": "woai@boss.com"

"ADDCODE": "",
"TRANSFERID": "01",
"COUPANCODE": "",
"PAYMENTTYPEID": "20",
"NOSTOCKNOTIFY": "0",
"DELIVERY": "k002"

这里的数据。就是ROWS 对应的
JSON如下。

[
{
"DataType": "System.DataTable",
"TableName": "table1",
"Columns": [
{
"ColumnName": "ADDRESSEEID",
"DataType": "System.String"
},
{
"ColumnName": "ADDRESSEE",
"DataType": "System.String"
},
{
"ColumnName": "SEX",
"DataType": "System.String"
},
{
"ColumnName": "PROVINCECODE",
"DataType": "System.String"
},
{
"ColumnName": "CITYCODE",
"DataType": "System.String"
},
{
"ColumnName": "AREACODE",
"DataType": "System.String"
},
{
"ColumnName": "POSTALCODE",
"DataType": "System.String"
},
{
"ColumnName": "ADDRESS",
"DataType": "System.String"
},
{
"ColumnName": "MOBILEPHONE",
"DataType": "System.String"
},
{
"ColumnName": "EMAIL",
"DataType": "System.String"
},
{
"ColumnName": "REGNAME",
"DataType": "System.String"
}
],
"Rows": [
{
"ADDRESSEE": "woai@boss.com",
"SEX": "2",
"PROVINCECODE": "32",
"CITYCODE": "394",
"AREACODE": "3350",
"POSTALCODE": "",
"ADDRESS": "woai@boss.com",
"MOBILEPHONE": "1325555555",
"EMAIL": "woai@boss.com",
"REGNAME": "woai@boss.com"
}
]
},
{
"DataType": "System.DataTable",
"TableName": "table1",
"Columns": [
{
"ColumnName": "ADDCODE",
"DataType": "System.String"
},
{
"ColumnName": "TRANSFERID",
"DataType": "System.String"
},
{
"ColumnName": "COUPANCODE",
"DataType": "System.String"
},
{
"ColumnName": "PAYMENTTYPEID",
"DataType": "System.String"
},
{
"ColumnName": "NOSTOCKNOTIFY",
"DataType": "System.String"
},
{
"ColumnName": "DELIVERY",
"DataType": "System.String"
}
],
"Rows": [
{
"ADDCODE": "",
"TRANSFERID": "01",
"COUPANCODE": "",
"PAYMENTTYPEID": "20",
"NOSTOCKNOTIFY": "0",
"DELIVERY": "k002"
}
]
}
]

...全文
164 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用楼主 jacky_163 的回复:]
这里的数据。就是ROWS 对应的
[/Quote]

不是rows对应的。



[Quote=引用 6 楼 jacky_163 的回复:]
对不上。不行。
[/Quote]
首先要知道数据的对象原型,例如
class myClass
{
public string DataType;
public string TableName;
MyColumn Columns[];
MyRow Rows[];
}

然后才能反序列化一个myClass的对象上。

至于MyColumn、MyRow类型,你也一样需要自己去或者跟发送给你数据的人协同去“知道”(不可能凭空写程序),这是你们自己的事。这不属于技术问题而是模型定义问题,但是不做,也就无法使用技术。
步恒者 2011-03-02
  • 打赏
  • 举报
回复
没解决,不过,还要谢谢楼上几位
步恒者 2011-01-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wuyq11 的回复:]
http://topic.csdn.net/u/20100530/16/ca0830c1-c132-479d-83a0-0c9862330a00.html?16173
[/Quote]

对不上。不行。
客户端是发送下面的数据到后台呀。

[
{
"DataType": "System.DataTable",
"TableName": "table1",
"Columns": [
{
"ColumnName": "ADDRESSEEID",
"DataType": "System.String"
},
{
"ColumnName": "ADDRESSEE",
"DataType": "System.String"
},
{
"ColumnName": "SEX",
"DataType": "System.String"
},
{
"ColumnName": "PROVINCECODE",
"DataType": "System.String"
},
{
"ColumnName": "CITYCODE",
"DataType": "System.String"
},
{
"ColumnName": "AREACODE",
"DataType": "System.String"
},
{
"ColumnName": "POSTALCODE",
"DataType": "System.String"
},
{
"ColumnName": "ADDRESS",
"DataType": "System.String"
},
{
"ColumnName": "MOBILEPHONE",
"DataType": "System.String"
},
{
"ColumnName": "EMAIL",
"DataType": "System.String"
},
{
"ColumnName": "REGNAME",
"DataType": "System.String"
}
],
"Rows": [
{
"ADDRESSEE": "woai@boss.com",
"SEX": "2",
"PROVINCECODE": "32",
"CITYCODE": "394",
"AREACODE": "3350",
"POSTALCODE": "",
"ADDRESS": "woai@boss.com",
"MOBILEPHONE": "1325555555",
"EMAIL": "woai@boss.com",
"REGNAME": "woai@boss.com"
}
]
},
{
"DataType": "System.DataTable",
"TableName": "table1",
"Columns": [
{
"ColumnName": "ADDCODE",
"DataType": "System.String"
},
{
"ColumnName": "TRANSFERID",
"DataType": "System.String"
},
{
"ColumnName": "COUPANCODE",
"DataType": "System.String"
},
{
"ColumnName": "PAYMENTTYPEID",
"DataType": "System.String"
},
{
"ColumnName": "NOSTOCKNOTIFY",
"DataType": "System.String"
},
{
"ColumnName": "DELIVERY",
"DataType": "System.String"
}
],
"Rows": [
{
"ADDCODE": "",
"TRANSFERID": "01",
"COUPANCODE": "",
"PAYMENTTYPEID": "20",
"NOSTOCKNOTIFY": "0",
"DELIVERY": "k002"
}
]
}
]
IHandler 2011-01-28
  • 打赏
  • 举报
回复
先反序列化为集合对象,再取
参考这个里面的反序列化
shine_fly 2011-01-28
  • 打赏
  • 举报
回复
没搞懂意思,楼下的呢?
步恒者 2011-01-28
  • 打赏
  • 举报
回复
在线等。。。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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