zoukankan      html  css  js  c++  java
  • 搭框架 泛型 笔记

     1、把对象转化成json字符串

            /// <summary>
            /// 把对象转化成json字符串
            /// </summary>
            /// <typeparam name=“T”>类型</typeparam>
            /// <param name="data"></param>
            /// <returns>data对象</returns>
            public string ObjectToJson<T>(T model)
            {
                System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(model.GetType());
                using (MemoryStream ms = new MemoryStream())
                {
                    serializer.WriteObject(ms, model);
                    return Encoding.UTF8.GetString(ms.ToArray());
                }
            }
      或者:第三方Newtonsoft.Json.dll

        /// <summary>
            /// 把对象转化成json字符串
            /// </summary>
            /// <typeparam name=“T”>类型</typeparam>
            /// <param name="data"></param>
            /// <returns>data对象</returns>
            public string ObjectToJsonNewton<T>(T model)
            {
                return JsonConvert.SerializeObject(model);
            }

    2、把集合list 转化成 json

            /// <summary>
            /// 把集合list 转化成 json
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="data"></param>
            /// <returns></returns>
            public string ObjectListToJson<T>(IList<T> data)
            {
                DataContractJsonSerializer json = new DataContractJsonSerializer(data.GetType());
                string JsonStr = "";
                //序列化       
                using (MemoryStream stream = new MemoryStream())
                {
                    json.WriteObject(stream, data);
                    JsonStr = Encoding.UTF8.GetString(stream.ToArray());
                }
                return JsonStr;

            }

    3、JsonString 转化成对象列表

        /// <summary>
            /// JsonString 转化成对象列表
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="JsonStr"></param>
            /// <returns></returns>
            public List<T> JsonToObjectList<T>(string JsonStr)
            {
                JavaScriptSerializer Serializer = new JavaScriptSerializer();
                List<T> objs = Serializer.Deserialize<List<T>>(JsonStr);
                return objs;
            }

       或者:

            /// <summary>
            /// JsonString 转化成对象
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="json"></param>
            /// <returns></returns>
            public T JsonToObject<T>(string json)
            {
                T obj = Activator.CreateInstance<T>();
                using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))
                {
                    DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
                    return (T)serializer.ReadObject(ms);
                }
            }

  • 相关阅读:
    keyset与entryset
    solr4.9r+ Eclipse 4.3+ tomcat 7.5 +winds7(二)
    如何解决This system is not registered with RHN.
    堆和栈的差别(转过无数次的文章)
    墨菲定律、二八法则、马太效应、手表定理、“不值得”定律、彼得原理、零和游戏、华盛顿合作规律、酒与污水定律、水桶定律、蘑菇管理原理、钱的问题、奥卡姆剃刀等13条是左右人生的金科玉律
    atitit.软件开发GUI 布局管理优缺点总结java swing wpf web html c++ qt php asp.net winform
    漫谈并发编程(二):java线程的创建与基本控制
    exosip
    PostgreSQL服务端监听设置及client连接方法
    APK反编译。
  • 原文地址:https://www.cnblogs.com/dean-Wei/p/3338814.html
Copyright © 2011-2022 走看看