C# JSON.NET-识别嵌套数组

C# JSON.NET-识别嵌套数组,c#,json.net,C#,Json.net,我有这段代码用于从json字符串中获取值 var json = @"[{""property"":""Status"",""value"":""val""}]"; var jArray = JArray.Parse(json); foreach (JToken jToken in jArray) { var property = jToken.Value<string>("property")

我有这段代码用于从json字符串中获取值

        var json = @"[{""property"":""Status"",""value"":""val""}]";

        var jArray = JArray.Parse(json);

        foreach (JToken jToken in jArray)
        {
            var property = jToken.Value<string>("property");
            var value = jToken.Value<string>("value");             
        }
我想以某种方式检查该值是否包含简单值或数组。如果值是数组,则将其绑定到集合

使用JSON.net是否可以做到这一点

dynamic value = jToken["value"];
if (value is JArray)
    // do something

(在我的示例中,您可以使用
object
而不是
dynamic
,但是
dynamic
以后可能更容易使用)

这是一个不同的策略,但我在这里使用了一个代码变体:。如果您喜欢,我将发布我的代码版本(它修复了一些bug,我相信,其中包括涉及包含数组或包含对象的bug。不记得是哪个)。仅供参考,您也可以使用
If(value.Type==JTokenType.Array)
dynamic value = jToken["value"];
if (value is JArray)
    // do something