ile dizi içindeki öğeleri seçme Bir json yanıtından bazı değerler seçmem gerekiyor. Ben json.net kullanarak, daha basit şeyler ile iyi, ama geçmişte bir şey üzerinde çok dokümantasyon/öğreticiler gibi görünmüyor.JSON.NET Linki
var stuff = response["teacherHolder"].Children()["students"];
var names = from y in stuff.Children().Values()
select y["name"];
ve bu:
var names= response["teacherHolder"]
.Select(s => (string)s.SelectToken("students[0].name")).ToList();
bu ve diğer varyasyonları denedim
{
"teacherHolder": [{
"id": 200000001,
"name": "Mr Test",
"class": "a4",
"students": [{
"id": "100532469",
"name": "ben"
},
{
"id": "100506025",
"name": "bill"
},
{
"id": "100000447",
"name": "bob"
}]
}]
}: json örnekte ben her yaşa seçmeniz gerekir altına cevap bir web sitesinden bir JObject. Sadece bu geri almak: Sonuçlar sonunda bir sözlüğe konur
[{"Key":"Newtonsoft.Json.Linq.JEnumerable`1[Newtonsoft.Json.Linq.JToken]","Value":"Newtonsoft.Json.Linq.JEnumerable`1[Newtonsoft.Json.Linq.JToken]"}]
.
Bunu nasıl yapacağınıza dair bir fikriniz var mı? Basit olacağını biliyorum, sadece doğru kombinasyonu buldum. Başka bir seçenek olarak,
var students = response["teacherHolder"].Children()["students"];
var names = students.Children()["name"];
Veya:: Tüm öğretmenlerin tüm öğrencilerin isimlerini almak istiyorsanız
Merhaba svick im - ama is back alıyorum: {Newtonsoft.Json.Linq.JEnumerable} isimler değişkeni? –
gdp
Evet, bu yüzden 'string's koleksiyonunu istiyorsanız,() Değerlerini eklemeniz gerektiğini söyledim. –
svick
Merhaba svick() sonuna değer ekledim. şimdi: var names = students.Children() ["name"] Değerler (); –
gdp