对jsonhelper类使用的纪录
因为最近在做一个coupon项目,给UI一个借口的字段需要使用json,所以只是简单使用了jsonHelper,反序列化的话,要过滤一下,不然很容易异常.
List<Coupon> couponInfos =new List<Coupon>();
//couponInfos.Add()···
string coupnInfoStr = JsonHelper.JsonSerializer<List<Coupon>>(couponInfos);
List<Coupon> couponJson = JsonHelper.JsonDeserialize<List<Coupon>>(coupnInfoStr);
//couponInfos.Add()···
string coupnInfoStr = JsonHelper.JsonSerializer<List<Coupon>>(couponInfos);
List<Coupon> couponJson = JsonHelper.JsonDeserialize<List<Coupon>>(coupnInfoStr);
没有遇到什么MemoryStream内存溢出的问题,只是对里面的json化机制不怎么清楚,然后出了一些问题。如果couponInfos、coupon、coupon字段为null,相应json序列化也是null,而空List<>则为“[]”,空对象则为“{}”;反序列化的话,就一定要符合copon的字段,对于其它情况需要进行异常处理。
因为对JavaScriptSerializer的Serialize、DataContractJsonSerializer的ReadObject找不到源码查看,所以里面怎么处理也还是迷糊。
顺便了解了一下memorystream--http://msdn.microsoft.com/zh-cn/library/system.io.memorystream(v=vs.80).aspx