在 Json 中获取令牌
Get Token in Json
我有一个问题 JSON 在 JArray 中获得第二层:
{
"Level1": {
"Level2": [{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}]
}
}
而且我想通过这种方式完全获得像Array这样的2级:
JArray contasdasd = _jsonMaster["Level1"]["Level2"] as JArray;
我得到:
{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}
我想要:
"Level2": [{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}]
有什么方法可以达到 2 级吗?
当然是你
var level1 = _jsonMaster["Level1"];
问题是你的水平太高了。
您感兴趣的对象 "Level2": [...]
本身不是 JArray,而是 JProperty
。您可以通过搜索 Level1
的属性来获取它,但请记住,您现在将拥有 JProperty
而不是 JArray
。该结果的 Value
将是您在当前代码中获得的 JArray
。
JProperty contasdasd = _jsonMaster["Level1"].First(o => (o as JProperty).Name == "Level2") as JProperty;
Console.WriteLine(contasdasd.ToString()); // Will be what you are looking for
Console.WriteLine(contasdasd.GetType()); // Will return JProperty
Console.WriteLine(contasdasd.Value.GetType()); // Will return JArray
我有一个问题 JSON 在 JArray 中获得第二层:
{
"Level1": {
"Level2": [{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}]
}
}
而且我想通过这种方式完全获得像Array这样的2级:
JArray contasdasd = _jsonMaster["Level1"]["Level2"] as JArray;
我得到:
{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}
我想要:
"Level2": [{
"id": "Chart",
"Box": [{
"id": "1",
"value": "10"
},{
"id": "2",
"value": "20"
}]
}]
有什么方法可以达到 2 级吗?
当然是你
var level1 = _jsonMaster["Level1"];
问题是你的水平太高了。
您感兴趣的对象 "Level2": [...]
本身不是 JArray,而是 JProperty
。您可以通过搜索 Level1
的属性来获取它,但请记住,您现在将拥有 JProperty
而不是 JArray
。该结果的 Value
将是您在当前代码中获得的 JArray
。
JProperty contasdasd = _jsonMaster["Level1"].First(o => (o as JProperty).Name == "Level2") as JProperty;
Console.WriteLine(contasdasd.ToString()); // Will be what you are looking for
Console.WriteLine(contasdasd.GetType()); // Will return JProperty
Console.WriteLine(contasdasd.Value.GetType()); // Will return JArray