Я создал строку JSON (для публикации в веб-сервисе), и для этого я использовал класс C # StringBuilder.Проблема в том, что когда я вставляю кавычки, класс StringBuilder избегает их.
В настоящее время я строю строку JSON следующим образом:
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("}");
Однако команда: dataJSON.ToString();
приводитв строке:
{ \"data\": { \"urls\": [ {\"url\": \"domain/test1.html\"} , {\"url\": \"domain/test2.html\"} ] }}
Обратите внимание на экранированные кавычки?Это действительно меня обескураживает, потому что сервер не может обработать косые черты.
Мое желаемое (что хорошо отправляется на мой сервер, когда я использую PHP) должно быть:
{ "data": { "urls": [ {"url": "domain/test1.html"} , {"url": "domain/test2.html"} ] }}
Есть ли ЛЮБОЙ способ получить строку в C #, чтобы включить кавычки, которые приведут к желаемой строке?
Большое спасибо!Brett