2013-11-01 9 views
6

JSON.NET kütüphanesini kullanıyorum. Birkaç JObject yarattım ve bunları bir JArray'a ekledim.JSAr.NET kütüphanesi kullanılarak JArray içinde bir düğüm (JObject) bulma

JArray array = new JArray(); 

JObject obj = new JObject(); 
obj.Add(new JProperty("text", "One")); 
obj.Add(new JProperty("leaf", false)); 
array.Add(obj); 

obj = new JObject(); 
obj.Add(new JProperty("text", "Two")); 
obj.Add(new JProperty("leaf", false)); 
array.Add(obj); 

obj = new JObject(); 
obj.Add(new JProperty("text", "Three")); 
obj.Add(new JProperty("leaf", true)); 
array.Add(obj); 

Şimdi (JProperty) Two olan metin olan bir JObject bulmak istiyorum. Bir JPArerty kullanarak bir JArray içinde bir JObject'i nasıl bulabilirim.

cevap

15

Böyle bulabilirsiniz: Bu Two değeriyle text adında bir özellik olan JArray ilk JObject bulacaksınız

JObject jo = array.Children<JObject>() 
    .FirstOrDefault(o => o["text"] != null && o["text"].ToString() == "Two"); 

. Böyle bir JObject varsa, jo boş olacaktır.

+0

Çok teşekkür ederim! Aynı problem vardı ve bu bir cazibe gibi çalıştı. Puanlar! :) – Fabiano