#c# #json
#c# #json
Вопрос:
{
"CIT": "Branch",
"travel": {
"arrival": {
"time": "2021-02-06T04:44:30Z"
},
"departure": {
"time": "2021-02-06T09:08:11Z"
},
"homearrival": {
"time": "2021-02-06T11:26:25Z"
},
"homedeparture": {
"time": "2021-02-06T04:44:29Z"
}
},
"cusname": "Mr. Senesh",
"appstatus": "Complete",
"cuscontact": "0252223597",
"serviceend": "2021-02-06T09:08:05Z",
"servicestart": "2021-02-06T06:49:47Z"
}
Я хочу удалить тег homearrival. Я проанализировал его как JObject, используя newtonsoftjson (например. JObject calldetail = JObject.Parse(Модель.Calldetail); )
позвоните подробно .Собственность («homearrival»)?.Remove(); не сработало.
Комментарии:
1. Пожалуйста, отформатируйте свой вопрос так, чтобы его было легче читать. Пожалуйста, также предоставьте свои усилия до сих пор.
2. Что происходит, когда вы анализируете его в определение объекта, у которого нет свойства HomeArrival. Удаляет / пропускает теги, не так ли ..!!
3. @PrateekShrivastava Я не анализирую его для определения объекта в его динамическом JSON. Я анализирую его в JObject с помощью библиотеки Newtonsoft.
4. @John Я отформатировал справку plz
5. «homearrival» — это не свойство
calldetail
. «путешествие» — это свойствоcalldetail
, а «homearrival» — свойство «путешествия».
Ответ №1:
Похоже, вы на правильном пути. Однако свойство «homearrival» не является свойством родительского объекта «calldetail». Это свойство подобъекта «путешествие».
Чтобы удалить свойство «homearrival», вам нужно будет вызвать метод «Remove ()» для подобъекта «travel». Например, я считаю, что следующий фрагмент кода должен решить эту проблему:
JObject calldetail = JObject.Parse(jsonString);
JObject travel = (JObject)calldetail.Property("travel").Value;
travel.Property("homearrival").Remove();
Пожалуйста, обратите внимание, что может быть более эффективный способ сделать это. Приведенный выше фрагмент кода предназначен только для подтверждения концепции.
Ответ №2:
JObject m = JObject.Parse(calldetail["travel"].ToString()); m.Property("homedeparture")?.Remove();
calldetail["travel"] = m;
Комментарии:
1. Хотя этот код может дать решение вопроса, лучше добавить контекст относительно того, почему / как это работает. Это может помочь будущим пользователям изучить и в конечном итоге применить эти знания к своему собственному коду. Вы также, вероятно, получите положительные отзывы / положительные отзывы от пользователей, когда код будет объяснен.