私は本当にここで困惑しています。返されたJSONは次のとおりです。
{"ResponseData":[{"ClusterID":"c02f1f5c-c61b-4f2c-ab5a-249966b3cdef","ClusterName":"Northeast","Courses":[{"CourseID":"8ab4f2b3-8160-4d7e-b79f-8d8b58926cc0","CourseName":"Home Course","SubCourses":[{"SubCourseName":"SubCourse1","SubCourseNumber":18}]},{"CourseID":"b3223464-333b-4c54-89c2-23908e0510c9","CourseName":"Away Course","SubCourses":[{"SubCourseName":"SubCourse1","SubCourseNumber":19}]}],"IsHomeCluster":true},"ResponseErrors":[]}
これは逆シリアル化する私のコードです:
JArray jArr = (JArray)JsonConvert.DeserializeObject(json);
foreach (var item in jArr) {
foreach (var subitem in item["ResponseData"]) {
Console.WriteLine (subitem ["ClusterID"]);
}
}
プロジェクトは正常にコンパイルされますが、シミュレーターで実行すると、次のエラーが発生します。
System.TypeLoadException:タイプロード例外が発生しました。at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(Newtonsoft.Json.JsonReader reader、System.Type objectType、Boolean checkAdditionalContent)[0x00000] in:0 at Newtonsoft.Json.JsonSerializer.DeserializeInternal(Newtonsoft.Json.JsonReader reader、System。タイプobjectType)[0x00000] in:0 at Newtonsoft.Json.JsonSerializer.Deserialize(Newtonsoft.Json.JsonReader reader、System.Type objectType)[0x00000] in:0 at Newtonsoft.Json.JsonConvert.DeserializeObject(System.String value、 System.Typeタイプ、Newtonsoft.Json.JsonSerializerSettings設定)[0x00000] in:0 at Newtonsoft.Json.JsonConvert.DeserializeObject(System.String value)[0x00000] in:0atAppMultiView.CourseInformationScreen。
AppMultiView.Application.Main(System.String [] args)[0x00000]の/Users/Dan/Desktop/AppTouch_dev /Main.cs:18
間違ったことを逆シリアル化しようとしていますか?
どんなポインタでも大歓迎です。