命名空间引入

1
using Newtonsoft.Json.Linq;

JObject和JArray

JObject

json中的对象
创建一个json对象

1
var obj = new JObject { { "name", "tom" }, { "age", 6 } };


给对象里面的属性赋予一个对象

1
2
3
var obj = new JObject { { "name", "tom" }, { "age", 6 } };  
var info = new JObject { { "message", "hello" }, { "age", 6 } };
obj.Add("info",info);

JArray

json中的数组

1
2
3
4
5
6
var mark = new JObject { { "name", "mark" }, { "age", 23 } };  
var tom = new JObject { { "name", "tom" }, { "age", 2222 } };

var arr = new JArray();
arr.Add(mark);
arr.Add(tom);


对象内嵌套多个数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var arr1 = new JArray  
{
new JObject { { "name", "mark" }, { "age", 12 } },
new JObject { { "name", "tom" }, { "age", 23 } },
new JObject { { "name", "cat" }, { "age", 45 } }
};

var arr2 = new JArray
{
new JObject { { "name", "mark2" }, { "age", 12 } },
new JObject { { "name", "tom2" }, { "age", 23 } },
new JObject { { "name", "cat2" }, { "age", 45 } }
};

var arr3 = new JObject();
arr3.Add("arr1",arr1);
arr3.Add("arr2",arr2);

打印的结果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
"arr1": [
{
"name": "mark",
"age": 12
},
{
"name": "tom",
"age": 23
},
{
"name": "cat",
"age": 45
}
],
"arr2": [
{
"name": "mark2",
"age": 12
},
{
"name": "tom2",
"age": 23
},
{
"name": "cat2",
"age": 45
}
]
}