C# JSON帮助类(可互转)

 public class JsonHelper
    {

        public JsonHelper()
        {
            //
            // TODO: Add constructor logic here
            //
        }
        /// <summary>
        /// 把对象序列化 JSON 字符串
        /// </summary>
        /// <typeparam name="T">对象类型</typeparam>
        /// <param name="obj">对象实体</param>
        /// <returns>JSON字符串</returns>
        public static string GetJson<T>(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;
            }
        }
        /// <summary>
        /// 把JSON字符串还原为对象
        /// </summary>
        /// <typeparam name="T">对象类型</typeparam>
        /// <param name="szJson">JSON字符串</param>
        /// <returns>对象实体</returns>
        public static T ParseFormJson<T>(string szJson)
        {
            T obj = Activator.CreateInstance<T>();
            using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))
            {
                DataContractJsonSerializer dcj = new DataContractJsonSerializer(typeof(T));
                return (T)dcj.ReadObject(ms);
            }
        }

    }
//因为在webservice中是不能接收集合的 所以用字符串接收选择了json.

//调用:List<BIZ.T_ExEntryDetailModel> ExdetailModel ExdetailModel = UPED.JsonHelper.ParseFormJson<List<BIZ.T_ExEntryDetailModel>>(jsonStr);   //解析JSON串为类

  //实体类转换JSON串为类

List<Models.ExEntryDetailModel> detailModel =servers.GetExEntryDetailModel(......);

string jsonStr = UPED.JsonHelper.GetJson<List<Models.ExEntryDetailModel>>(detailModel);
时间: 2024-10-01 06:22:16

C# JSON帮助类(可互转)的相关文章

Json与Java对象互转之Gson学习

Json与Java对象互转之Gson学习 请尊重他人的劳动成果,转载请注明出处:Json与Java对象互转之Gson学习         我曾在<XML,Object,Json转换之浅析Xstream的使用>一文中介绍过使用XStream进行XML,Object,Json之间的转换,虽然XStream内置了对Json的支持,但是效果不是特别好,毕竟XStream重点不在Json.下面就介绍另外一种工具.           Gson(又称Google Gson)是Google公司发布的一个开放

基于MVC+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据

近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重构完善过程中,很多细节花费不少时间进行研究和提炼,一步步走过来,也积累了不少经验,本系列将主要介绍我在进一步完善我的Web框架基础上积累的经验进行分享,本随笔主要介绍使用如何使用Json实体类构建菜单数据,然后在主界面中进行使用. 菜单的界面效果如下所示,菜单分为一级菜单.二级菜单.三级菜单,他们各自

Code片段 : .properties属性文件操作工具类 &amp; JSON工具类

摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “贵专” — 泥瓦匠 一.java.util.Properties API & 案例 java.util.Properties 是一个属性集合.常见的api有如下: load(InputStream inStream)  从输入流中读取属性 getProperty(String key)  根据key,获取属性值 getOrDefault(Object key, V defaultValue)

基于MVC4+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据

最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重构完善过程中,很多细节花费不少时间进行研究和提炼,一步步走过来,也积累了不少经验,本系列将主要介绍我在进一步完善我的Web框架基础上积累的经验进行分享,本随笔主要介绍使用如何使用Json实体类构建菜单数据,然后在主界面中进行使用. 菜单的界面效果如下所示,菜单分为一级菜单.二级菜单.三级菜单,他们各

公共的Json操作类

using System; using System.Data; using System.Text; using System.Collections.Generic; using System.Reflection; using System.Data.Common; using System.Collections; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.IO; usi

Json帮助类以及如何使用

首先要添加引用System.Runtime.Serialization.public class JSONHelper { public static string Serialize<T>(T obj) { System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.G

js json和字符串的互转

json与字符串的互转:    下面格式两种只是针对引号有稍微的区别 var result = JSON.parse("{\"a\":\"擦擦\",\"b\":\"拉拉\"}"); alert(result.a); // ------------------------------------------------------------------------- var a=JSON.stringify

Json与类对象转换

Json在js,jquery中可以直接使用,比如下串: { "from":"en" ,"to":"zh" ,"trans_result": [ {"src":"today","dst":"\u4eca\u5929"} ] } 可以直接使用data.from即可获取到"en". 但是在c#中不可以.要获取值,有

Json工具类 - JsonUtils.java

Json工具类,提供Json与对象之间的转换. 源码如下:(点击下载 - JsonUtils.java . gson-2.2.4.jar ) import java.lang.reflect.Type; import java.util.Map; import com.google.gson.Gson; import com.google.gson.GsonBuilder; /** * Json工具类 * */ @SuppressWarnings("unchecked") public