У меня есть строка JSON, которую я хочу изменить на С#. Я хочу иметь возможность удалить набор данных, когда одно из дочерних значений является определенным значением.
Возьмите следующее
{
"responseHeader":{
"status":0,
"QTime":0,
"params":{
"explainOther":"",
"fl":"*,score",
"indent":"on",
"start":"0",
"q":"*:*",
"hl.fl":"",
"qt":"",
"wt":"json",
"fq":"",
"version":"2.2",
"rows":"2"}
},
"response":{"numFound":2,"start":0,"maxScore":1.0,"docs":
[{
"id":"438500feb7714fbd9504a028883d2860",
"name":"John",
"dateTimeCreated":"2012-02-07T15:00:42Z",
"dateTimeUploaded":"2012-08-09T15:30:57Z",
"score":1.0
},
{
"id":"2f7661ae3c7a42dd9f2eb1946262cd24",
"name":"David",
"dateTimeCreated":"2012-02-07T15:02:37Z",
"dateTimeUploaded":"2012-08-09T15:45:06Z",
"score":1.0
}]
}}
Выше показаны два результата ответа. Я хочу иметь возможность удалить всю группу результатов родительского ответа, когда ее дочернее значение «id» совпадает, например, если мой идентификатор был «2f7661ae3c7a42dd9f2eb1946262cd24», я бы хотел, чтобы вторая группа была удалена, и поэтому мой результат будет выглядеть следующим образом .
{
"responseHeader":{
"status":0,
"QTime":0,
"params":{
"explainOther":"",
"fl":"*,score",
"indent":"on",
"start":"0",
"q":"*:*",
"hl.fl":"",
"qt":"",
"wt":"json",
"fq":"",
"version":"2.2",
"rows":"2"}},
"response":{"numFound":2,"start":0,"maxScore":1.0,"docs":[
{
"id":"438500feb7714fbd9504a028883d2860",
"name":"John",
"dateTimeCreated":"2012-02-07T15:00:42Z",
"dateTimeUploaded":"2012-08-09T15:30:57Z",
"score":1.0
}]
}}
Мне нужно будет выполнить несколько операций удаления в файле Json. Файл Json может содержать тысячи результатов, и мне действительно нужен самый производительный способ.
Любая помощь очень ценится.