Comment sérialiser un JObject sans le formatage?


97

J'ai un JObject(j'utilise Json.Net) que j'ai construit avec LINQ to JSON (également fourni par la même bibliothèque). Lorsque j'appelle la ToString()méthode sur le JObject, elle génère les résultats sous forme de JSON formaté.

Comment définir le formatage sur "aucun" pour cela?

Réponses:


181

Appelez la ToString(Formatting.None)méthode de JObject .

Sinon, si vous transmettez l'objet à la méthode JsonConvert.SerializeObject, il renverra le JSON sans mise en forme.

Documentation: écrire du texte JSON avec JToken.ToString


4
Cela signifie-t-il que passer un JObjectà SerializeObjectest un cas particulier? Au lieu de traiter le JObjectcomme une classe C # ordinaire et d'essayer de sérialiser les composants internes, il fait quelque chose comme à la jObject.ToString(...)place?
Adrian Ratnapala

35

Vous pouvez également faire ce qui suit;

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

40
En quoi est-ce différent de la suggestion de James ci-dessus? James n'a pas inclus la référence complète de l'espace de noms et vous l'avez fait - sinon le code est le même, non?
Jazimov

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.