示例#1
0
    /// <summary>
    /// 演示DataContractJsonSerializer的序列化和反序列化
    /// </summary>
    void ShowDataContractJsonSerializer()
    {
        var dataContractJsonSerializerObject = new API.DataContractJsonSerializerObject {
            ID = Guid.NewGuid(), Name = "DataContractJsonSerializer", Age = 28, Time = DateTime.Now
        };

        var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(API.DataContractJsonSerializerObject));

        // 序列化
        var ms = new MemoryStream();

        serializer.WriteObject(ms, dataContractJsonSerializerObject);

        ms.Position = 0;
        var sr  = new StreamReader(ms);
        var str = sr.ReadToEnd();

        txtDataContractJsonSerializer.Text = str;


        // 反序列化
        var buffer = System.Text.Encoding.UTF8.GetBytes(str);
        var ms2    = new MemoryStream(buffer);
        var dataContractJsonSerializerObject2 = serializer.ReadObject(ms2) as API.DataContractJsonSerializerObject;

        lblDataContractJsonSerializer.Text = dataContractJsonSerializerObject2.Name;
    }
示例#2
0
    /// <summary>
    /// 演示DataContractJsonSerializer的序列化和反序列化
    /// </summary>
    void ShowDataContractJsonSerializer()
    {
        var dataContractJsonSerializerObject = new API.DataContractJsonSerializerObject { ID = Guid.NewGuid(), Name = "DataContractJsonSerializer", Age = 28, Time = DateTime.Now };

        var serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(typeof(API.DataContractJsonSerializerObject));

        // 序列化
        var ms = new MemoryStream();

        serializer.WriteObject(ms, dataContractJsonSerializerObject);

        ms.Position = 0;
        var sr = new StreamReader(ms);
        var str = sr.ReadToEnd();
        txtDataContractJsonSerializer.Text = str;

        // 反序列化
        var buffer = System.Text.Encoding.UTF8.GetBytes(str);
        var ms2 = new MemoryStream(buffer);
        var dataContractJsonSerializerObject2 = serializer.ReadObject(ms2) as API.DataContractJsonSerializerObject;
        lblDataContractJsonSerializer.Text = dataContractJsonSerializerObject2.Name;
    }