天天看点

Model 和 JSON 间互相转换

在.net 4.0 下可以使用:

    // using System.Runtime.Serialization.Json;

     <summary>

     解析JSON,仿Javascript风格

     </summary>

    public static class JSON

    {

        public static T parse<T>(string jsonString)

        {

            using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)))

            {

                return (T)new DataContractJsonSerializer(typeof(T)).ReadObject(ms);

            }

        }

        public static string stringify(object jsonObject)

            using (var ms = new MemoryStream())

                new DataContractJsonSerializer(jsonObject.GetType()).WriteObject(ms, jsonObject);

                return Encoding.UTF8.GetString(ms.ToArray());

    }

在.net 以前版本下用JSON.NET

//Model转JSON

            Model m = new Model();

            m.city = "beijing";

            m.city_en = "北京";

            string json =   JsonConvert.SerializeObject(m);

//JSON转Model

m= (Model)JsonConvert.DeserializeObject<Model>(str); 

继续阅读