首页 新闻 赞助 找找看

json字符串转换成对象,对象为空,如何解决

0
悬赏园豆:5 [已关闭问题] 关闭于 2013-10-29 10:49

string jsonString=@"[{'goodsName':'shescomingHELLO印染T恤(3color)','country':'KR','url':'http://6789korea.com/goods/content.asp?guid=313295&cate=5039&params=cate=5037^branduid=^sword=^swhat=^listsort=new^listtype=album^listsize=8^page=1?guid=313295','price':'4200'}]";

Model Goods  //实体类

//代码

MemoryStream stream = new MemoryStream();
            DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(List<Goods>));
            StreamWriter wr = new StreamWriter(stream);
            jsonstring = jsonstring.Replace('\'', '\"');
            wr.Write(jsonString);
            wr.Flush();
            stream.Position = 0;
            Object obj = ser.ReadObject(stream);
            List<Goods> p2 = (List<Goods>)obj;

结果P2对象的字段全部为空,怎么回事

十里外教堂的主页 十里外教堂 | 初学一级 | 园豆:71
提问于:2013-10-28 16:58
< >
分享
所有回答(5)
0

这json,格式不对吧~

你可以尝试用其他的第三方库试试。Json.Net,FastJson等...

幻天芒 | 园豆:37175 (高人七级) | 2013-10-28 17:04

{"GoodsName":"aaa","url":"http://","price":4200}这种格式的我也试过的,结果对象的字段也都是为空的,以前做的时候和现在一样的,不清楚怎么回事,现在结果没有值。

支持(0) 反对(0) 十里外教堂 | 园豆:71 (初学一级) | 2013-10-28 17:07

@十里外教堂: ...,三楼的方式不错,测试下具体哪一组有问题。

支持(0) 反对(1) 幻天芒 | 园豆:37175 (高人七级) | 2013-10-29 00:08
0

使用外部json库不对,验证的话,你在eclipse下打开这个jar,看有没有错。另外,json强制转换是不会出错的,需要包的话,留下邮箱

 

江边流客 | 园豆:5 (初学一级) | 2013-10-28 17:12

额 ,我的是.Net的

支持(0) 反对(0) 十里外教堂 | 园豆:71 (初学一级) | 2013-10-28 17:13
0

里面一对可能格式部队 才出现你说的那种情况 你可以一对一对的试试

wolfy | 园豆:2636 (老鸟四级) | 2013-10-28 17:34

恩,我试试

支持(0) 反对(0) 十里外教堂 | 园豆:71 (初学一级) | 2013-10-29 10:08
0

我发现json格式里面字段的大小写,要和实体类的大小写保持一致,我既然把这个给忽略了。

十里外教堂 | 园豆:71 (初学一级) | 2013-10-29 10:49
0

试试这个站:http://www.ofmonkey.com/

独孤飞 | 园豆:283 (菜鸟二级) | 2017-01-16 16:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册