c#怎么实现JSON与对象之间互相转换功能

  介绍

这篇文章主要介绍c#怎么实现JSON与对象之间互相转换功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1。首先是声明用户信息对象,DataContract修饰类,表示可以被解析成JSON数据成员修饰属性,顺序表示解析的顺序,另外的爱人是数组列的表,表示女朋友个数

地址表示送货地址,DailyRecord,表示日常记录

使用系统;
  使用System.Collections.Generic;
  使用来;
  使用text;
  使用System.Runtime.Serialization;
  名称空间FunctionTest.Model
  {
  (DataContract)
  公开课用户信息
  {
  (数据成员(订单=0)]
  公共字符串的用户名{;设置;}
  (数据成员(订单=1))
  公共int年龄{得到;设置;}
  (数据成员(订单=2)
  公共int性别{得到;设置;}
  (数据成员(订单=3)]
  公共List情人{得到;设置;}
  (数据成员(订单=4)]
  公共ContactAddress地址{得到;设置;}
  (数据成员(订单=5)]
  公共Dictionary<字符串,string>DailyRecord {
  得到;设置;
  }
  }
  (DataContract)
  公开课ContactAddress
  {
  (数据成员(订单=0)]
  公共字符串省{得到;设置;}
  (数据成员(订单=1))
  城市公共字符串{得到;设置;}
  (数据成员(订单=2)
  国家公共字符串{得到;设置;}
  (数据成员(订单=3)]
  公共字符串细节{得到;设置;}
  }
  }

2。JSON帮助类核心代码

///& lt; summary>///Json转换成对象///& lt;/summary>///& lt; typeparam name=癟"祝辞& lt;/typeparam>///& lt;参数name=癹sonText"祝辞& lt;/param>///& lt; returns> & lt;/returns>
  公共静态T JsonToObject(字符串jsonText)
  {
  DataContractJsonSerializer s=新DataContractJsonSerializer (typeof (T));
  MemoryStream女士=new MemoryStream (Encoding.UTF8.GetBytes (jsonText));
  T obj=(T) s.ReadObject(女士);
  ms.Dispose ();
  返回obj;
  }///& lt; summary>///对象转换成JSON///& lt;/summary>///& lt; typeparam name=癟"祝辞& lt;/typeparam>///& lt;参数name=皁bj"祝辞& lt;/param>///& lt; returns> & lt;/returns>
  公共静态字符串ObjectToJSON (T obj)
  {
  DataContractJsonSerializer序列化器=new DataContractJsonSerializer (typeof (T));
  字符串的结果=string.Empty;
  使用(MemoryStream=new MemoryStream女士())
  {
  序列化器。WriteObject (ms, obj);
  ms.Position=0;
  使用(StreamReader阅读=new StreamReader(女士)
  {
  结果=read.ReadToEnd ();
  }
  }
  返回结果;
  }

3。调用

//1。对象,在JSON   用户信息信息=新用户信息   {=10岁   性别=1,   用户名=傲醯禄?   情人=new List{“美女1“,“美女2“,“美女3“;},   地址=new ContactAddress   {   ?昂鲜 ?   城市=俺ど呈小?   国家=巴窍亍?   详细信息=澳酬戈箍斓菡也坏降牡胤?   },   string> DailyRecord=new Dictionary<字符串;{{“星期一“,“吃饭,},{“星期二“,“洗衣服“},{“星期三“,“好事情”;}}   };   json字符串=ObjectToJSON(信息),

4。反序列化后的结果

代码如下:

{“UserName":“刘德华“,“Age": 10“Gender": 1,“Lover":[“美女1“,“美女2“,“美女3“),“Address": {“Province":“湖南省“,“City":“长沙市“,“Country":“望城县“,   “Details":“某旮旯快递找不到的地方,},“DailyRecord": [{“Key":“星期一“,“Value":“吃饭,},{“Key":“星期二“,“Value":“洗衣服“},{“Key":“星期三“,“Value":“好事情“}]}

以上是c#怎么实现JSON与对象之间互相转换功能的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

c#怎么实现JSON与对象之间互相转换功能