2016-05-05 11 views
0

Ziemlich neu mit Json zu arbeiten und Probleme mitFahrrad durch JSON-Objekte

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

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

    {"page":2,"example":  

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

Das ist mein Json, es ist nur ein Beispiel und nicht wirklich Json, die ich verwende, aber die gleiche Art und Weise

dargelegt

I wurde mit dem folgenden C# die Werte innerhalb der Seite 1 des Json zu bekommen, aber ich brauche Hilfe die Werte von Seite 2 bekommen und so weiter

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()); 
    } 

Schließlich meine Klassen sind

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; } 
    } 
+0

Können Sie erklären, was meinen Sie damit, Sie müssen Werte für Seite 2 und so weiter? Wie ich Ihren Code verstehen kann, fügt er in ListBox die Werte des ersten Beispiels für alle Seiten ein. –

Antwort

0

können Sie LINQ Ausdruck

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

Methode erforderlichen Daten zurück

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

meinst du var data = von i in RootList wo i.page == 2 wählen Sie i; – Instance

+0

Ja. Irgendwelche Probleme damit? – Raghuveer

Verwandte Themen