问个关于json解析的问题

shuihan20e 2017-07-21 09:47:20
C# 4.0开发,
json格式如下

{
"success": "true",
"data": [
{
"spmc": "商品名称2",
"slv": "税率2",
"reason": "失败原因"
},
{
"spmc": "商品名称3",
"slv": "税率3",
"reason": "失败原因"
}
]
}


声明类如下

class Result
{
public string success;
public List<Info> goods;
}

class Info
{
public string spmc;
public string slv;
public string reason;
}


解析如下

string json = "{\"success\": \"true\",\"data\": [{\"spmc\": \"商品名称2\",\"slv\": \"税率2\",\"reason\":" +
"\"失败原因\" },{\"spmc\": \"商品名称3\", \"slv\": \"税率3\",\"reason\": \"失败原因\"}]}";

MessageBox.Show(json);
JavaScriptSerializer Serializer = new JavaScriptSerializer();
Result msg = new Result();
msg = Serializer.Deserialize<Result>(json);

MessageBox.Show(msg.success); //这步没有问题


foreach (Info good in msg.goods) //这里报未将对象引用设置到对象的实例。
{
MessageBox.Show("reason:" + good.reason + "\r\n slv:" + good.slv + "\r\n spmc:" + good.spmc);
}


我应该怎么改或者怎么声明类怎么解析呢
...全文
154 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuihan20e 2017-07-21
  • 打赏
  • 举报
回复
谢谢楼上各位,已解决
ilikeff8 2017-07-21
  • 打赏
  • 举报
回复
名字不统一,json是data,你定义的而是goods
ilikeff8 2017-07-21
  • 打赏
  • 举报
回复
名字不统一,join里是data,你定义的而是goods
Anonymous477 2017-07-21
  • 打赏
  • 举报
回复
public List<Info> goods; 改为 public List<Info> data; 看看

111,097

社区成员

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

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

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