PHP群:95885625 Hbuilder+MUI群:81989597 站长QQ:634381967
    您现在的位置: 首页 > 开发编程 > ASP.NET教程 > 正文

    ASP.NET中使用JavaScript Serializer实现JSON序列化和反序列化

    作者:admin来源:网络浏览:时间:2020-09-30 00:07:50我要评论
    导读:我们在使用ajax技术从后台获取数据时往往需要使用Json进行数据的传递,所以会涉及到对象的序列化和反序列化的问题,在ASP.NET中的我们一般使...
    • 我们在使用ajax技术从后台获取数据时往往需要使用Json进行数据的传递,所以会涉及到对象的序列化和反序列化的问题,在ASP.NET中的我们一般使用JavaScriptSerializer实现对象的序列化和反序列化操作,该类在System.Web.Script.Serializatioin命名空间下,需引用System.Web.Extensions.dll.
       
      实例:
       

      HTML 预览

       
      1. class People  
      2.    {  
      3.        public int Id { get; set; }  
      4.        public string Name { get; set; }  
      5.        public DateTime Age { get; set; }  
      6.    }  
      序列化:

      HTML 预览

      1. List<People> list = new List<People>();   
      2.        People peo = new People();   
      3.        peo.Id = 1;   
      4.        peo.Name = "zhangsan";   
      5.        peo.Age = DateTime.Now;   
      6.         list.Add(peo);   
      7.    
      8.         People peo2 = new People();   
      9.         peo2.Id = 2;   
      10.         peo2.Name = "lisi";   
      11.         peo2.Age = DateTime.Now;   
      12.         list.Add(peo2);   
      13.        JavaScriptSerializer ser = new JavaScriptSerializer();   
      14.        TextBox1.Text = ser.Serialize(list);   

       

      显示结果:

      HTML 预览

      1. [  
      2.   
      3. {"Id":1,"Name":"zhangsan","Age":"\/Date(1363336335448)\/"},  
      4.   
      5. {"Id":2,"Name":"lisi","Age":"\/Date(1363336335448)\/"}  
      6.   
      7. ]  
      反序列化:

      HTML 预览
       

      1. string json = TextBox1.Text;   
      2.        JavaScriptSerializer ser=new JavaScriptSerializer();   
      3.        List<People> list = ser.Deserialize<List<People>>(json);   
      4.        foreach (People peo in list)   
      5.        {   
      6.            Response.Write(peo.Name + "<br>" + peo.Id + "<br>" + peo.Age);   
      7.            Response.Write("<hr>");   
      8.        } 

        

      前台脚本解析:

      HTML 预览

      1. $(":submit:eq(2)").click(function () {   
      2.                 // return false;   
      3.                 $.getJSON("../logic/October.ashx", { code: "one" }, function (data) {   
      4.                     $.each(data, function (key, val) {   
      5.                         $("p").append(key + "--->>" + val + "<br>");   
      6.                         $.each(val, function (k, v) {   
      7.                             $("h5").append(k+"---->>"+v+"<hr>");   
      8.                         });   
      9.                            
      10.                     });   
      11.                 });   
      12.                 return false;   
      13.             });   

       


    转载请注明(B5教程网)原文链接:https://b5.mxunkeji.com/content-11-2892-1.html
    相关热词搜索: