Sie Deserialisieren auf eine Sammlung von Typ CinfoRichiesta
, die einen Eigenschaftswert für students
und locations
halten sollen.
Unter der Annahme, dass Ihr JSON richtig formatiert ist und Ihre Klassendefinition ist geeignet für die Reaktion (I Doppel es durch Einfügen das gesamte Antwortstring in json2csharp.com Überprüfung wird empfohlen)
Sobald das alles validiert ist, sollten Sie in der Lage sein,
foreach(Question q in myobj)
{
Console.WriteLine(q.students.class)
}
, die das Ergebnis von 3
geben soll: die students
und locations
Sammlungen intern wie so zu sehen.
bearbeiten
Ich denke, Ihre wichtigste Frage ist, warum Sie die Eigenschaften von students
und locations
Zugang sind nicht in der Lage. Stellen Sie sicher, Students
ist eine eigene Klasse als solche:
public class Students
{
public int class { get; set; }
public int theme { get; set; }
}
und Ihre locations
Klasse sollte sein:
public class Locations
{
public int h { get; set; }
public int l { get; set; }
}
Sie sollten dann eine questions
Klasse haben, die sowohl students
und locations
als solche instaniates:
public class Questions
{
public int id { get; set; }
public int book { get; set; }
public Student students { get; set; }
public Locations locations { get; set; }
}
Wenn Sie mit der JSON-Deserialisierung arbeiten, ist es wichtig, dass Ihre Objekteigenschaft n Ames (zB class
) stimmen mit der Antwortzeichenfolge überein. Wenn Sie es als public int Theme
geschrieben haben, wird es nicht direkt zugeordnet.
Etwas ärgerlich in Bezug auf den Coding-Standards, aber hey ho :-)
Großartig ist es sehr schön –