zoukankan      html  css  js  c++  java
  • Linq to Json

    原本感觉Newtonsoft.Json和.net自己的JavaScriptSerializer相差无几,所以将工程里的Json都换成了 JavaScriptSerializer来实现,可是近几日遇到一个需求.在反序列化时我并没有预先定义好的类,而是要以字典形式读取.

    于是我自己实现了一个类,由于没有模型对象,所以所有的Json读取和检测过程都要重新写过.

    后来却发现Newtonsoft中已经提供了我需要的功能,甚至还提供了Json的Linq查询.

    JObject

    下面用个实例来搞定它的读写

    1.Json是这样的

    {title:123,body:456,list:{title:'这是一个标题',body:'what'}}
    2.我要将其中几项都搞出来,代码:
    static void Main(string[] args)
    {
    string str = "{title:123,body:456,list:{title:'这是一个标题',body:'what'}}";
    JObject o = JObject.Parse(str);
    Console.WriteLine(o["title"]);
    Console.WriteLine(o["body"]);
    Console.WriteLine(o["list"]["title"]);
    Console.WriteLine(o["list"]["body"]);
    Console.ReadKey();
    }
    3.这样就输出了:
    123
    456
    "这是一个标题"
    "what"
     
    不足:字符串还是案字符串输出带"",但我想这也不是问题.Trim就好了

    Linq to Json

    基本Linq的都差不多,可以参考Json.net文档.这个并未深入研究

    	string str = "{title:123,body:456,list:{title:'这是一个标题',body:'what'}}";
    JObject o = JObject.Parse(str);

    var s =
    from p in o.Children()
    select p;

    foreach (var item in s)
    {
    Console.WriteLine(item);
    }

    Console.ReadKey();
    http://www.360doc.com/content/11/0527/08/5054188_119690206.shtml
  • 相关阅读:
    selenium产生的垃圾文件清理
    英语学习词根法
    ecommerce学习
    tfs2012安装
    转载文件,英语学习
    Mishka and Divisors CodeForces
    Codeforces Round #364 (Div. 1) (差一个后缀自动机)
    莫比乌斯反演练习
    bzoj 1267 Kth Number I (点分治,堆)
    程序员的绘图利器 — Gnuplot
  • 原文地址:https://www.cnblogs.com/zhangwei595806165/p/3305811.html
Copyright © 2011-2022 走看看