循环通过Json对象

时间:2016-05-05 06:45:38

标签: c# json win-universal-app

与Json合作并遇到麻烦相当新鲜

[{"page":1,"example":  

  [{"number":6666666,"Year":2005}]},    

  {"page":2,"example":      

  [{"number":555555,"Year":2000}]}]

这是我的Json,它只是一个例子,而不是我使用的Json,但以同样的方式出发

我一直在使用以下c#来获取Json第1页中的值,但我需要帮助从第2页获取值等等

   var http = new HttpClient();
   var response = await http.GetAsync("Example.json");
   var result = await response.Content.ReadAsStringAsync();
   List<Rootobject> RootList = JsonConvert.DeserializeObject<List<Rootobject>>(result);
   foreach (Rootobject item in RootList)
   {
    listBox1.Items.Add(item.Example[0].number.ToString());
   }

最后我的课程是

  public class Thread
    {
        [JsonProperty("number")]
        public int number { get; set; }
        [JsonProperty("year")]
        public int year { get; set; }
    }

    public class Rootobject
    {
        [JsonProperty("page")]
        public int page { get; set; }
        [JsonProperty("example")]
        public List<Example> example{ get; set; }
    }

1 个答案:

答案 0 :(得分:0)

您可以使用LINQ表达式

var data = var i in RootList
           where i.page == 2; // here you can replace the number as per your requirement

返回所需数据的方法

Public Rootobject GetDataByPage(int pageNo) {
      return RootList.FirstOrDefault(x => x.page == pageNo);
}