Тестирование вложенных ключей с помощью Json.NET?
Я хочу отфильтровать реактивный поток строк в кодировке json, например:
{ "Key1" : {"key2":"value"},
"key3" : "other values"
}
Я хочу отфильтровать элементы, которые имеют некоторое значение дляkey2
, как это:
IDisposable valueQuery = globalEventStream
.Select(e => JObject.Parse(e.EventArgs.Data))
.Where(e => e["key1"]["key2"] != null)
Но это дает мне ошибку
Cannot access child value on Newtonsoft.Json.Linq.JValue
Единственный способ обойти это - сделать следующее:
IDisposable deathDisposable = globalEventStream
.Select(e => JObject.Parse(e.EventArgs.Data))
.Where(e => e["key1"] != null).Select(e => e["key1"])
.Where(e => e["key2"] != null).Select(e => e["key2"])
Есть ли способ фильтрации вложенных ключей с помощью одногоWhere
заявление?