详细说明JSON字符串的使用和维护工作

最近研究学习JSON字符串,前者用到的数据内容基本上都是JSON字符串,遂想写一个格式化数据成JSON的东东,在网上找了一下,发现还蛮多的,实现了一个类似于ToString()的方法:

 
 
  1. using System;
  2. using System.Web.Script.Serialization;
  3. namespace Demo
  4. {
  5. /// 
  6. /// JSON帮助类
  7. /// 
  8.     public static class JsonHelper
  9. {
  10. /// 
  11. /// 格式化成Json字符串
  12. /// 
  13. ///  name="obj">需要格式化的对象
  14. /// Json字符串
  15.         public static string ToJson(object obj)
  16. {
  17. JavaScriptSerializer serializer = new JavaScriptSerializer();
  18. return serializer.Serialize(obj);
  19. }
  20. /// 
  21. /// 格式化成Json字符串
  22. /// 
  23. ///  name="obj">需要格式化的对象
  24. ///  name="recursionDepth">指定序列化的深度
  25. /// Json字符串
  26.         public static string ToJson(object obj, int recursionDepth)
  27. {
  28. JavaScriptSerializer serializer = new JavaScriptSerializer();
  29. serializer.RecursionLimit = recursionDepth;
  30. return serializer.Serialize(obj);
  31. }
  32. }

一字不漏的照打,应该没有问题吧(后来发现SCOTT大作末尾的Note,忘记看了,真是粗心啊~~~ *_*)!但是在编辑的时候,虽然是成功了,但是发现有2个警告,由于本人写程序一直都是尽自己***努力来保证所写程序的警告数量最少,所以,当然要看看这两个警告到底是什么东东。

警 告 是:“System.Web.Script.Serialization.JavaScriptSerializer.JavaScriptSerializer()” 已过时:“The recommended alternative is System.Runtime.Serialization.DataContractJsonSerializer.”记得刚开始学习JSON字符串的时候,在用AppSettings的时候(具体哪个方法记不清了)也出现过类似的警告,***是用ConfigurationManager代替就没有出现过该警告了,那这次应该也差不多吧。#t#

于是到MSDN看看是怎么回事。没弄明白,再到CSDN看看呢。还是没弄明白,***,求助一下Google。NND,折腾了半天,还是不知道到底是什么回事。用“DataContractJsonSerializer”来代替吧,但是又少了对“System.Runtime.Serialization”的引用,把引用添加上吧,还是没有编译通过。

一直不知道是怎么回事,***,幸运的Google到一个Demo,也是用“DataContractJsonSerializer”来代替上诉过时警告的。SCOTT大作中末尾Note给出的链接。总算是明白怎么回事了。解决步骤如下:

 
 
  1. using System;
  2. using System.IO;
  3. using System.Runtime.Serialization.Json;
  4.  

注:因为要用到Stream等东东,所以这里要添加上JSON字符串这个命名空间。

新闻名称:详细说明JSON字符串的使用和维护工作
当前路径:http://www.shufengxianlan.com/qtweb/news4/332104.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联