2 qq 31461149 qq_31461149 于 2017.01.11 21:21 提问

求教! [{},{}] 格式的数据怎么用json.net解析

客户端代码是这样的:

                var blocks = [];
        $("#content .window").each(function (idx, elem) {


            var $elem = $(elem);
            blocks.push({
                BlockId: $elem.attr('id'),
                BlockContent: $elem.html(),
                BlockX: parseInt($elem.css("left"), 10),
                BlockY: parseInt($elem.css("top"), 10)
            });
        });

                var serliza = JSON.stringify(blocks);

stringify之后的格式是这种: [{"xxx":"xxx","xxx":"xxx"},{"xxx":"xxx","xxx":"xxx"}]

但是json.net官方doc的sample中没有对这种格式的解析方法

求救呀

1个回答

oyljerry
oyljerry   Ds   Rxr 2017.01.11 21:29
已采纳

string jsonArrayText1 = "[{'a':'a1','b':'b1'},{'a':'a2','b':'b2'}]";
JArray ja = (JArray)JsonConvert.DeserializeObject(jsonArrayText1);
string ja1a = ja[1]["a"].ToString();
//或者
JObject o = (JObject)ja[1];
string oa = o["a"].ToString();
qq_31461149
qq_31461149 回复showbo: 啊啊啊 这就是我想要的答案 太感谢了!解成jarray太麻烦了,还要循环构造对象
11 个月之前 回复
showbo
showbo 回复qq_31461149: List<Person>就行了。。List<Person> list = JsonConvert.DeserializeObject<List<Person>>(jsonText);
11 个月之前 回复
qq_31461149
qq_31461149 这个虽然可以通过遍历单个取值然后赋给对象,但是不能以类名直接转换,类似这种方式:Person = JsonConvert.DeserializeObject<Person >(jsonText);
11 个月之前 回复
qq_31461149
qq_31461149 可以拿到数据了,我还想请问一下,这个JObject,怎么转换成实体类呀
11 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!