首页 > Web开发 > 详细

C#解析Json数组对象(利用AjaxPro实现)

时间:2014-02-09 15:40:47      阅读:549      评论:0      收藏:0      [点我收藏+]

1. 前端Json数组定义

bubuko.com,布布扣
  var jsonArr=new Array();
  var json1={"Name":"zhangsan","Age":15,"Sex":"male"};
  var json2={"Name":"lisi","Age":10,"Sex":"female"};
  jsonArr.push(json1);
  jsonArr.push(json2);
bubuko.com,布布扣

2. 后端:C# 定义与传入的Json对象类似的类,用来接收Json对象
    这里要注意:传入的Json必须和后台自定义的类的属性值一样。

 

bubuko.com,布布扣
    public class People
    {
        public string Name;
        public int Age;
        public string Sex;
    }
bubuko.com,布布扣

 

3. 采用AjaxPro方法传入后端,然后利用AjaxPro.JavaScriptDeserializer类的静态方法DeserializeFromJson(string json,Type type)
   

bubuko.com,布布扣
        [AjaxPro.AjaxMethod]
        public void DeserializeJson(object jsonObj)
        {
            List<People> lstResult = new List<People>();
            lstResult = (List<People>)JavaScriptDeserializer.DeserializeFromJson(jsonObj.ToString(), typeof(List<People>));
        }
bubuko.com,布布扣

    或者先转换为AjaxPro.JavaScriptArray对象,然后遍历每项,调用AjaxPro.JavaScriptDeserializer类的静态方法Deserialize(IJavaScriptObject object,Type type)

bubuko.com,布布扣
AjaxPro.JavaScriptArray array = (AjaxPro.JavaScriptArray)JavaScriptDeserializer.DeserializeFromJson(jsonObj.ToString(), typeof(AjaxPro.JavaScriptArray));
            for (int i = 0; i < array.Count; i++)
            {
                AjaxPro.JavaScriptObject item = (AjaxPro.JavaScriptObject)array[i];
                People people=(People)AjaxPro.JavaScriptDeserializer.Deserialize(item, typeof(People));
                lstResult.Add(people);
            }
bubuko.com,布布扣

C#解析Json数组对象(利用AjaxPro实现)

原文:http://www.cnblogs.com/stevemin/p/3540715.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!