2009-02-20 6 views
45

Ho un JObject (sto usando Json.Net) che ho costruito con LINQ su JSON (fornito anche dalla stessa libreria). Quando chiamo il metodo ToString() su JObject, emette i risultati come JSON formattato.Come serializzare un JObject senza la formattazione?

Come impostare la formattazione su "nessuno" per questo?

risposta

90

Chiama il metodo ToString(Formatting.None) di JObject.

In alternativa, se si passa l'oggetto al metodo JsonConvert.SerializeObject, viene restituito il JSON senza formattazione.

Documentazione: Write JSON text with JToken.ToString

+3

Vuol dire che il superamento di un 'JObject' a' SerializeObject' è un caso particolare? Invece di trattare il 'JObject' come una normale classe C# e provare a serializzare i componenti interni, fa invece qualcosa come' jObject.ToString (...) '? –

24

È inoltre possibile effettuare le seguenti operazioni;

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

Com'è diverso dal suggerimento di James sopra? James non ha incluso il riferimento completo dello spazio dei nomi e l'hai fatto - altrimenti il ​​codice è lo stesso, no? – Jazimov