現在、JSON デシリアライゼーションに行き詰まっています。
これが2種類のJSONです。受け取ることができます:
{
"code": 0,
"response": {
"isFollowing": false,
"isFollowedBy": false,
"connections": {
"google": {
"url": "",
"id": "c35f4e",
"name": "jean"
},
"facebook": {
"url": "https://www.facebook.com/",
"id": "1000064139",
"name": "jean mic"
}
},
"isPrimary": true,
"id": "780",
"location": "",
"isPrivate": false,
"joinedAt": "2013-10-18T16:04:09",
"username": "jeandavid",
"numLikesReceived": 0,
"about": "",
"name": "jean",
"url": "",
"profileUrl": "",
"reputation": ,
"avatar": {
"small": {
"permalink": "https://picture.jpg",
"cache": "https://picture.jpg"
},
"isCustom": false,
"permalink": "https://picture.jpg",
"cache": "/noavatar9.png",
"large": {
"permalink": "w",
"cache": "https://picture.jpg"
}
},
"isAnonymous": false
}
}
そしてこれ:
{
"response": [
{
"uid": 2017156,
"first_name": "David",
"last_name": "Jean",
"sex": 1,
"nickname": "",
"bdate": "12.12.1990",
"photo_medium": "img.jpg"
}
]
}
最初に、私は使用します:
Dictionary<string, string> deserializedObj = JsonConvert.DeserializeObject<Dictionary<string, string>>(response);
ただし、1 次元の Json データでのみ機能します。
だからGoogleを見た後、私は使用しようとしました:
JArray jArr = (JArray)JsonConvert.DeserializeObject(response);
foreach (var item in jArr)
{
Console.WriteLine(item);
}
しかし、私はこの例外を受け取ります:
タイプ 'Newtonsoft.Json.Linq.JObject' のオブジェクトをタイプ 'Newtonsoft.Json.Linq.JArray' にキャストできません。
最初の JSON データとして、Google と Facebook のデータと、ユーザー名、評判、アバター、ユーザー ID などを取得したいと考えています。
助けてくれてありがとう!!