J'essaie d'analyser la chaîne JSON et de collecter des valeurs de tableau présents à l'intérieur.Get jqGrid Ajax tableau de hiérarchie imbriqué de Json en C# par Newtonsoft Json
{"_search":true,"nd":1492064211841,"rows":30,"page":1,"sidx":"","sord":"asc","filters":"{\"groupOp\":\"OR\",\"rules\":[{\"field\":\"Emp_ID\",\"op\":\"cn\",\"data\":\"ASAS\"},{\"field\":\"Name\",\"op\":\"cn\",\"data\":\"ASAS\"},{\"field\":\"Designation\",\"op\":\"cn\",\"data\":\"ASAS\"},{\"field\":\"City\",\"op\":\"cn\",\"data\":\"ASAS\"},{\"field\":\"State\",\"op\":\"cn\",\"data\":\"ASAS\"},{\"field\":\"Country\",\"op\":\"cn\",\"data\":\"ASAS\"}]}"}
PS: Above string is coming from jqGrid Ajax to the WebMethod in C#.
Je ne reçois pas le succès sur l'obtention filtres-> règles [0] -> Données
Ce que j'ai essayé:
dynamic jObj = JObject.Parse(postData);
var data = jObj.filters.rules[0].data;
erreur: 'Newtonsoft.Json.Linq.JValue' ne contient pas de définition de 'règles'.
dynamic jObj = JObject.Parse(postData);
var filters = jObj.filters; //Sucess: getting filters here
var rules1 = filters["rules"]; //Error: 'Newtonsoft.Json.Linq.JValue' does not contain a definition for 'rules'.
var rules2 = filters.rules; //Error: 'Newtonsoft.Json.Linq.JValue' does not contain a definition for 'rules'.
Comment obtenir une valeur à l'intérieur filtres-> règles ET filtres-> règles [0] -> données?
Êtes-vous sûr que 'postData' a un type de chaîne et donc 'JObject.Parse (postData)' est requis? Si vous avez vraiment besoin de faire 'JObject.Parse (postData)' alors vous devez toujours faire ** second ** parsing 'filtres dynamiques = JObject.Parse (jObj.filters);' au lieu de 'var filters = jObj.filters; ' – Oleg
Merci Oleg! :) –
Vous êtes les bienvenus! – Oleg