J'ai construit une chaîne JSON (pour être postée sur un service web), et j'ai utilisé la classe C# StringBuilder pour cela. Le problème est que lorsque j'insère des guillemets, la classe StringBuilder leur échappe.C# StringBuilder avec des guillemets (forJSON)
Je suis en train de construire la chaîne JSON en tant que tel:
StringBuilder dataJSON= new StringBuilder();
dataJSON.Append("{");
dataJSON.Append(" " + Convert.ToChar(34) + "data" + Convert.ToChar(34) + ": {");
dataJSON.Append(" " + Convert.ToChar(34) + "urls" + Convert.ToChar(34) + ": [");
dataJSON.Append(" {" + Convert.ToChar(34) + "url" + Convert.ToChar(34) + ": " + Convert.ToChar(34) + domain + "/" + path[0] + Convert.ToChar(34) + "}");
dataJSON.Append(" ,{" + Convert.ToChar(34) + "url" + Convert.ToChar(34) + ": " + Convert.ToChar(34) + domain + "/" + path[1] + Convert.ToChar(34) + "}");
dataJSON.Append(" ]");
dataJSON.Append(" }");
dataJSON.Append("}");
Cependant, la commande: dataJSON.ToString();
résultats dans la chaîne:
{ \"data\": { \"urls\": [ {\"url\": \"domain/test1.html\"} , {\"url\": \"domain/test2.html\"} ] }}
Notez les guillemets échappées? Cela me gâche vraiment, parce que le serveur ne peut pas gérer les barres obliques.
Mon désiré (qui affiche bien à mon serveur quand j'utilise PHP) devrait être:
{ "data": { "urls": [ {"url": "domain/test1.html"} , {"url": "domain/test2.html"} ] }}
Est-il possible d'obtenir une chaîne en C# pour inclure des citations qui résulteront dans la chaîne désirée ?
Merci beaucoup! Brett
Où les voyez-vous? Dans le débogueur? – CodingGorilla
Oui, dans la fenêtre intermédiaire. Est-ce que ceci pourrait être le problème? Est-ce que la fenêtre intermédiaire ajouterait les barres obliques? – Brett
Ce n'est pas ce qui est vraiment retourné – hunter