Frage Schreiben von Json mit Newtonsoft.json.JsonTextWriter


Ich schreibe ein Json mit Newtonsoft.json.JsonTextWriter. Hier ist mein Code:

StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
JsonWriter jsonWriter = new JsonTextWriter(sw);

jsonWriter.Formatting = Formatting.Indented;

jsonWriter.WritePropertyName("Name");
jsonWriter.WriteValue("Allan");

Und ich nehme das an sw hat das json-Format {"Name": "Allan"}. Wie kann ich den geschriebenen Text in irgendeiner Zeichenkettenvariable erhalten, damit ich diese json Daten in meiner http Anforderung verwenden kann?


10
2018-05-12 15:24


Ursprung


Antworten:


Meine Antwort ist jetzt nicht relevant, da das Codebeispiel in der Frage bearbeitet wurde, um diese Zeilen einzuschließen, die hier für die Nachwelt hinterlassen wurden, siehe Kommentare für weitere Informationen.


Sie müssen Folgendes hinzufügen, um die JSON-Elemente ordnungsgemäß zu schließen:

jsonWriter.WriteEndObject();

Rufen Sie dann die ToString () - Methode des StringBuilders auf:

string strMyString = sb.ToString(); //JSONString

Verweise:

StringWriter-Konstruktor (MSDN) | JSON lesen und schreiben (NewtonKing.com)


15
2018-05-12 15:35