Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSON解析数组C#_C#_Arrays_Json_Parsing - Fatal编程技术网

JSON解析数组C#

JSON解析数组C#,c#,arrays,json,parsing,C#,Arrays,Json,Parsing,我有以下json结构(这是美化的)。我在为以下内容(数组中的数组?)定义类定义时遇到问题。我如何循环每个“行”并比较b->iscritical是否等于1 [ { "b": { "iscritical": 0, "value": "fiber4/2/1" }, "c": { "iscritical": 0, "value": 1990 }, "dd": { "iscritical": 0,

我有以下json结构(这是美化的)。我在为以下内容(数组中的数组?)定义类定义时遇到问题。我如何循环每个“行”并比较b->iscritical是否等于1

[
  {
    "b": {
      "iscritical": 0,
      "value": "fiber4/2/1"
    },
    "c": {
      "iscritical": 0,
      "value": 1990
    },
    "dd": {
      "iscritical": 0,
      "value": {
        "dname": "Texas",
        "mdomain": "fiber4/2/1",
        "text": "Texas FTTH"
      }
    }
  },
  {
    "b": {
      "iscritical": 0,
      "value": "fiber4/2/2"
    },
    "c": {
      "iscritical": 0,
      "value": 1991
    },
    "dd": {
      "iscritical": 0,
      "value": {
        "dname": "Texas",
        "mdomain": "fiber4/2/2",
        "text": "Texas FTTH"
      }
    }
  }
]

提前谢谢你

你的问题很模糊。第一个问题是如何将这个JSON字符串反序列化为对象

这是一个较小对象的数组,其中还包含其他对象作为属性。您可以将类定义为:

公共类示例
{
[JsonProperty(“b”)]
公共B{get;set;}
[JsonProperty(“c”)]
公共C{get;set;}
[JsonProperty(“dd”)]
公共Dd{get;set;}
}
公共B级
{
[JsonProperty(“iscritical”)]
公共长关键{get;set;}
[JsonProperty(“价值”)]
公共字符串值{get;set;}
}
公共C类
{
[JsonProperty(“iscritical”)]
公共长关键{get;set;}
[JsonProperty(“价值”)]
公共长值{get;set;}
}
公共类Dd
{
[JsonProperty(“iscritical”)]
公共长关键{get;set;}
[JsonProperty(“价值”)]
公共值{get;set;}
}
公共阶级价值
{
[JsonProperty(“dname”)]
公共字符串Dname{get;set;}
[JsonProperty(“mdomain”)]
公共字符串Mdomain{get;set;}
[JsonProperty(“文本”)]
公共字符串文本{get;set;}
}
当您将JSON作为字符串时,可以使用
Newtonsoft.JSON
对其进行反序列化,如下所示:


IEnumerable values=JsonConvert.DeserializeObject(json)

这是否回答了您的问题?在VisualStudio中,您可以将JSON粘贴到类中(编辑、粘贴特殊、将JSON粘贴为类)