博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于对象序列化json 说说
阅读量:4959 次
发布时间:2019-06-12

本文共 2230 字,大约阅读时间需要 7 分钟。

下面一个json格式图(说一下,json 其实就是js 数组和对象的一种字符串表现形式 var obj=[] 或者var obj={}  )

var json= {} 如下

从图中看 json中有两个成员分别是 total 和 ship(而ship里面有多个对象,那么我们就知道 ship是一个List<ship>列表)

下面我们在C#中模拟输出此效果

public class JsonHelper   {       ///        /// JSON序列化       ///        public static string JsonSerializer
(T t) { DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T)); MemoryStream ms = new MemoryStream(); ser.WriteObject(ms, t); string jsonString = Encoding.UTF8.GetString(ms.ToArray()); ms.Close(); return jsonString; } ///
/// JSON反序列化 /// public static T JsonDeserialize
(string jsonString) { DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T)); MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)); T obj = (T)ser.ReadObject(ms); return obj; } }

//上面jsonHelp是帮助类

public class rows    {        public int itemid { get; set; }        public int productid { get; set; }        public string listprice { get; set; }        public string unitcost { get; set; }        public string status { get; set; }        public string attr1 { get; set; }           }    public class Product    {        public int total { get; set; }        public List
ship { get; set; } //列表集对像 属性 }
protected void Page_Load(object sender, EventArgs e)        {            Product prt = new Product(); //主对象            rows  r = new rows();                                 List
list_row = new List
(); //列表 list for (int i = 0; i < 3; i++) { r.itemid = i; r.productid = i; r.listprice = "ss_" + i; r.unitcost = "un_" + i; r.status = "Status" + i; r.attr1 = "atrr" + i; list_row.Add(r); } prt.total = 10; prt.ship = list_row; Response.Write(JsonHelper.JsonSerializer
(prt)); //序列化输出 }

最后昨到上面输出的json字符串

转载于:https://www.cnblogs.com/yzenet/p/3493007.html

你可能感兴趣的文章
JavaWeb之JSON
查看>>
URL中的特殊字符处理
查看>>
HOT SUMMER 每天都是不一样,积极的去感受生活 C#关闭IE相应的窗口 .
查看>>
windows平台上编译mongdb-cxx-driver
查看>>
optionMenu-普通菜单使用
查看>>
MVC3分页传2参
查看>>
2016-2017-2点集拓扑作业[本科生上课时]讲解视频
查看>>
appium(13)- server config
查看>>
IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR...
查看>>
管理信息系统 第三部分 作业
查看>>
[Leetcode Week13]Search a 2D Matrix
查看>>
查看端口占用cmd命令
查看>>
2019.01.17王苛震作业
查看>>
Halcon学习(八)文本操作
查看>>
MFC电子词典
查看>>
简单工厂(Simple Factory)
查看>>
04: 打开tornado源码剖析处理过程
查看>>
02: 安装epel 解决centos7无法使用yum安装nginx
查看>>
清除浮动
查看>>
PayPal(贝宝)支付接口、文档、IPN
查看>>