json - Wie serialisiert man ein JObject ohne Formatierung?




serialization json.net (4)

Sie können JsonConvert.SerializeObject()

JsonConvert.SerializeObject(myObject) // myObject is returned by JObject.Parse() method

JsonConvert.SerializeObject()

JObject.Parse()

Ich habe ein JObject (ich benutze Json.Net), das ich mit LINQ zu JSON (auch von der gleichen Bibliothek zur Verfügung gestellt) erstellt habe. Wenn ich die ToString() Methode für das JObject , gibt es die Ergebnisse als formatierten JSON aus.

Wie stelle ich die Formatierung dafür auf "keine" ein?


Rufen Sie JObjects ToString(Formatting.None) Methode auf.

Wenn Sie das Objekt alternativ an die JsonConvert.SerializeObject-Methode übergeben, wird JSON ohne Formatierung zurückgegeben.

Dokumentation: Schreiben Sie JSON-Text mit JToken.ToString


Sie können auch Folgendes tun;

string json = myJObject.ToString(Newtonsoft.Json.Formatting.None);

JSON-js - JSON in JavaScript.

Verwenden Sie JSON.stringify um ein Objekt in eine Zeichenfolge zu JSON.stringify :

var json_text = JSON.stringify(your_object, null, 2);

Verwenden Sie JSON.parse um eine JSON-Zeichenfolge in ein Objekt zu JSON.parse :

var your_object = JSON.parse(json_text);

Es wurde kürzlich von John Resig empfohlen:

... Bitte starten Sie die Migration Ihrer JSON-Anwendungen zu Crockfords json2.js. Es ist vollständig kompatibel mit der ECMAScript 5-Spezifikation und wird leicht degradiert, wenn eine native (schnellere!) Implementierung existiert.

In der Tat, ich habe gestern eine Änderung in jQuery gestern, die JSON.parse-Methode verwendet, wenn es existiert, jetzt, nachdem es vollständig angegeben wurde.

Ich neige dazu zu vertrauen, was er in Sachen JavaScript sagt :)

Neuere Browser unterstützen das JSON-Objekt nativ. Die aktuelle Version der JSON-Bibliothek von Crockford definiert JSON.stringify und JSON.parse nur dann, wenn sie noch nicht definiert sind, sodass die JSON.stringify Implementierung intakt bleibt.





json serialization json.net