using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization.Json;
using System.IO;
using System.Text;

/// <summary>  
/// JSON序列化和反序列化辅助类  
/// </summary>  
public static class JsonHelper
{

    /// <summary>  
    /// JSON序列化  
    /// </summary>  

    public static string SerializerJson<T>(this T t)
    {
        DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
        MemoryStream ms = new MemoryStream();
        ser.WriteObject(ms, t);
        string jsonString = Encoding.UTF8.GetString(ms.ToArray());
        ms.Close();
        return jsonString;
    }

    /// <summary>  
    /// JSON反序列化  
    /// </summary>  
    public static T DeserializeJson<T>(this string jsonString)
    {
        DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
        MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
        T obj = (T)ser.ReadObject(ms);
        return obj;
    }
}

posted on 2012-06-01 17:43  万德源  阅读(794)  评论(0编辑  收藏  举报