反序列化未知的Json型Newtonsoft

时间:2017-03-14 13:34:40

标签: c# json

我有一个带有未知键的json结构。 这是一个随机的例子:

{
    "menu": {
        "header": "xProgress SVG Viewer",
        "items": [
            {
                "id": "Open"
            },
            {
                "id": "OpenNew",
                "label": "Open New"
            }
}

现在我想读取所有数据并为每个值执行一些操作。 我找到了两种方法,但都不容易处理:

object obj = JsonConvert.DeserializeObject(data);

foreach (var prop in obj.GetType().GetProperties())
    if (prop.GetIndexParameters().Count() == 0)
        //Access with 'prop.Name' and 'prop.GetValue(obj, null)'
        //But Iam not able to handle this correctly

using (var reader = new JsonTextReader(new System.IO.StringReader(data)))
    while (reader.Read())
        //Access with 'reader.Value'
        //Complex - next picture

string.Format("{0} - {1} - {2}", reader.TokenType, reader.ValueType, reader.Value) because data looks like

它可以处理这些数据(数组也是可能的)。有什么想法吗?

0 个答案:

没有答案