zoukankan      html  css  js  c++  java
  • 序列化与反序列化能力

    序列化与反序列化能力
    •JavaScriptConverter:自定义序列化与反序列化能力
    •JavaScriptTypeResolver:建立数据类型与标识符的映射
    •不是真正的JSON序列化
    –时间日期对象
    –Sys.Serialization.JavaScriptSerializer

    aspx
        <form id="form1" runat="server">
            
    <asp:ScriptManager ID="ScriptManager1" runat="server" ScriptMode="Debug">
            
    </asp:ScriptManager>
            
            
    <script language="javascript" type="text/javascript">
                var serializer 
    = Sys.Serialization.JavaScriptSerializer;
                
    // debugger;
                var date = serializer.deserialize('<%= this.SerializedDateTime %>');
                
    // debugger;
                
                var intern 
    = serializer.deserialize('<%= this.GetSerializedEmployee(0) %>');
                var vendor 
    = serializer.deserialize('<%= this.GetSerializedEmployee(1) %>');
                var fte 
    = serializer.deserialize('<%= this.GetSerializedEmployee(2) %>');
            
    </script>
        
    </form>

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Web.Script.Serialization;
    using ComplexType;
    using TypeResolver;

    public partial class _6_Serialization : System.Web.UI.Page
    {
        
    protected void Page_Load(object sender, EventArgs e)
        {
            
        }

        
    protected string SerializedDateTime
        {
            
    get
            {
                JavaScriptSerializer serializer 
    = new JavaScriptSerializer();
                
    return serializer.Serialize(DateTime.Now);
            }
        }

        
    protected string GetSerializedEmployee(int id)
        {
            Employee emp 
    = null;
            
    switch (id)
            {
                
    case 0: emp = new Intern(); break;
                
    case 1: emp = new Vendor(); break;
                
    default: emp = new FulltimeEmployee(); break;
            }

            JavaScriptSerializer serializer 
    = new JavaScriptSerializer(new CustomizeTypeResolver());
            
    return serializer.Serialize(emp);
        }
    }
  • 相关阅读:
    征集“微软武汉DOTNET俱乐部武汉大学樱花赏”活动内容
    2007上半年微软武汉.NET俱乐部活动预告。
    [微软新技术培训]微软新技术预览之Microsoft Office SharePoint Server 2007
    武汉.NET俱乐部武大赏樱花精彩图片
    [微软新技术培训]微软新技术预览之Visual Studio Team System
    [摘]互联网传说
    python:注释最多的冒泡排序
    《C#线程参考手册》读书笔记(一):定义线程
    【转】C# DateTime 日期计算
    详谈WPF开发中的数据虚拟化
  • 原文地址:https://www.cnblogs.com/timy/p/1173149.html
Copyright © 2011-2022 走看看