Je travaille avec Json.Net pour analyser un tableau. Ce que j'essaie de faire est d'extraire les paires nom/valeur du tableau et de les affecter à des variables spécifiques lors de l'analyse du JObject.
Voici ce que j'ai dans le tableau:
[
{
"General": "At this time we do not have any frequent support requests."
},
{
"Support": "For support inquires, please see our support page."
}
]
Et voici ce que j'ai dans le C #:
WebRequest objRequest = HttpWebRequest.Create(dest);
WebResponse objResponse = objRequest.GetResponse();
using (StreamReader reader = new StreamReader(objResponse.GetResponseStream()))
{
string json = reader.ReadToEnd();
JArray a = JArray.Parse(json);
//Here's where I'm stumped
}
JSON et Json.Net étant relativement nouveaux pour moi, il peut s'agir d'une solution de base pour quelqu'un d'autre. En gros, je dois juste assigner les paires nom/valeur dans une boucle foreach afin de pouvoir sortir les données sur le front-end. Est-ce que quelqu'un a déjà fait ça?
Vous pouvez obtenir les valeurs de données comme ceci:
string json = @"
[
{ ""General"" : ""At this time we do not have any frequent support requests."" },
{ ""Support"" : ""For support inquires, please see our support page."" }
]";
JArray a = JArray.Parse(json);
foreach (JObject o in a.Children<JObject>())
{
foreach (JProperty p in o.Properties())
{
string name = p.Name;
string value = (string)p.Value;
Console.WriteLine(name + " -- " + value);
}
}
Violon: https://dotnetfiddle.net/uox4Vt
Utilisez Manatee.Json https://github.com/gregsdennis/Manatee.Json/wiki/Usage
Et vous pouvez convertir l'intégralité de l'objet en une chaîne. Le nom du fichier.json devrait se trouver dans le dossier Documents.
var text = File.ReadAllText("filename.json");
var json = JsonValue.Parse(text);
while (JsonValue.Null != null)
{
Console.WriteLine(json.ToString());
}
Console.ReadLine();