ASP.NET JSON字符串与实体类的互转换示例代码

还是先封装一个类吧! 这个类网上都可以找到的!有个这个类,一切都将变得简单了,哈哈。

复制代码 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.Serialization.Json;
using System.ServiceModel.Web;///记得引用这个命名空间
using System.IO;
using System.Text;
///
/// Summary description for JsonHelper
///

public class JsonHelper
{
    public JsonHelper()
    {
        //
        // TODO: Add constructor logic here
        //
    }
    ///
    /// 把对象序列化 JSON 字符串
    ///

    /// 对象类型
    /// 对象实体
    /// JSON字符串
    public static string GetJson(T obj)
    {
        //记住 添加引用 System.ServiceModel.Web
        /**
         * 如果不添加上面的引用,System.Runtime.Serialization.Json; Json是出不来的哦
         * */
        DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(T));
        using (MemoryStream ms = new MemoryStream())
        {
            json.WriteObject(ms, obj);
            string szJson = Encoding.UTF8.GetString(ms.ToArray());
            return szJson;
        }
    }
    ///
    /// 把JSON字符串还原为对象
    ///

    /// 对象类型
    /// JSON字符串
    /// 对象实体
    public static T ParseFormJson(string szJson)
    {
        T obj = Activator.CreateInstance();
        using (MemoryStream ms = new MemoryStream (Encoding.UTF8.GetBytes(szJson)))
        {
            DataContractJsonSerializer dcj = new DataContractJsonSerializer(typeof(T));
            return (T)dcj.ReadObject(ms);
        }
    }
}

测试实体类:
复制代码 代码如下:

public class TestData
{
    public TestData()
    {
    }
    public int Id { get; set; }
    public string Name { get; set; }
    public string Sex { get; set; }
}

测试页面:
复制代码 代码如下:

<%@ Page Language="C#" %>





   


   


   


   

   




关于json字符串转换为实体请各位自己测试吧!只要有上面那个JsonHelper 类,一切都好办!

你可能感兴趣的:(ASP.NET JSON字符串与实体类的互转换示例代码)