Serialisiert ein Objekt direkt in ein JObject anstatt in eine Zeichenfolge in json.net

Serialisiert ein Objekt direkt in ein JObject anstatt in eine Zeichenfolge in json.net

Sie können FromObject verwenden statische Methode von JObject

JObject jObj = JObject.FromObject(someObj)

http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_Linq_JObject_FromObject.htm


Bitte beachten Sie, dass die JObject Die von @Eser vorgeschlagene Route funktioniert nur für Nicht-Array-CLR-Objekte. Es führt zu der folgenden Ausnahme, wenn Sie versuchen, ein Array-Objekt in JObject zu konvertieren :

Falls es sich also um ein Array-Objekt handelt, sollten Sie JArray verwenden stattdessen wie unten gezeigt:

JArray jArray = JArray.FromObject(someArrayObject);

Bitte geben Sie using Newtonsoft.Json.Linq; an oben in Ihrer Codedatei, um dieses Code-Snippet zu verwenden.


Um alles zu kombinieren:Verwenden Sie JToken für alles (Objekte UND Arrays).

JToken token = JToken.FromObject(someObjectOrArray);

Überprüfen Sie dann token.Type welche JTokenType es ist (Objekt, Array oder anderes).