json配列に "3"を持つユーザーを選択する必要があります。最後にLINQ to JSON - 配列のクエリ
{
"People":[
{
"id" : "123",
"firstName" : "Bill",
"lastName" : "Gates",
"roleIds" : {
"int" : ["3", "9", "1"]
}
},
{
"id" : "456",
"firstName" : "Steve",
"lastName" : "Jobs",
"roleIds" : {
"int" : ["3", "1"]
}
},
{
"id" : "789",
"firstName" : "Elon",
"lastName" : "Musk",
"roleIds" : {
"int" : ["3", "7"]
}
},
{
"id" : "012",
"firstName" : "Agatha",
"lastName" : "Christie",
"roleIds" : {
"int" : "2"
}
}
]}
、私の結果は、イーロン・マスク&スティーブ・ジョブズにする必要があります。私は.Values<int>()
に.Values<string>()
を変更
"Accessed JArray values with invalid key value: "roleIds". Int32 array index expected"
、まだ運:私は次のエラーを取得しています
var roleIds = pplFeed["People"]["roleIds"].Children()["int"].Values<string>();
var resAnAssocInfo = pplFeed["People"]
.Where(p => p["roleIds"].Children()["int"].Values<string>().Contains("3"))
.Select(p => new
{
id = p["id"],
FName = p["firstName"],
LName = p["lastName"]
}).ToList();
:これは私が使用したコード(&他のバリエーション)です。
私は間違っていますか?
あなたのJSONが無効です。問題を確認するにはhttps://jsonformatter.curiousconcept.com/にアップロードしてください。おそらく '{" People ":[{{" id ":" 123 "...'は '{" People ":{{" id ":" 123 "...'と一致する '}'最後から削除されましたか? – dbc
良い目です。私はjsonを正しいフォーマットに従うように更新しました。しかし、それはまだ動作しません。私が間違っていることは何か考えていますか? –