unirest.ioを使用して C# で API を呼び出しています。次の JSON 応答を取得します ( response.Body として)。
{
"persons": [{
"id": "a010",
"name": "Joe",
"subjects": [
"Math",
"English"
]
},
{
"id": "b020",
"name": "Jill",
"subjects": [
"Science",
"Arts"
]
}]
}
次のように、これをカスタム クラス オブジェクトにマップしようとしました。
HttpRequest request = Unirest.get(API_V1_URL).header("accept", "application/json");
HttpResponse<string> response = request.asString();
var serializer = new JavaScriptSerializer();
persons = serializer.Deserialize<Persons>(response.Body);
ただし、 person.infos = NULLを設定することで常に通過します。
私のカスタムクラス
public class Persons
{
public PersonInfo[] infos;
}
public class PersonInfo
{
public string id;
public string name;
public string[] subjects;
}
このような JSON を .Net クラス オブジェクトに正しくマップする方法を教えてください。