Como serializar um JObject sem a formatação?

97

Eu tenho um JObject(estou usando Json.Net) que construí com LINQ to JSON (também fornecido pela mesma biblioteca). Quando eu chamo o ToString()método no JObject, ele produz os resultados como JSON formatado.

Como defino a formatação para "nenhum" para isso?

Hugo
fonte

Respostas:

181

Chame o ToString(Formatting.None)método de JObject .

Como alternativa, se você passar o objeto para o método JsonConvert.SerializeObject, ele retornará o JSON sem formatação.

Documentação: escreva texto JSON com JToken.ToString

James Newton-King
fonte
4
Isso significa que passar um JObjectpara SerializeObjecté um caso especial? Em vez de tratar o JObjectcomo uma classe C # comum e tentar serializar os internos, ele faz algo como jObject.ToString(...)?
Adrian Ratnapala
35

Você também pode fazer o seguinte;

string json = myJObject.ToString(Newtonsoft.Json.Formatting.None);
Simpu
fonte
40
Como isso é diferente da sugestão de James acima? James não incluiu a referência completa do namespace e você incluiu - caso contrário, o código é o mesmo, não?
Jazimov