Ich habe diesen String in meiner Datenbank gespeichert:
str = "{ "context_name": { "lower_bound": "value", "upper_bound": "value", "values": [ "value1", "valueN" ] } }"
Diese Zeichenfolge ist bereits im JSON-Format, aber ich möchte sie in ein JObject- oder JSON-Objekt konvertieren.
JObject json = new JObject();
Ich habe den json = (JObject)str;
cast probiert, aber es hat nicht funktioniert. Wie kann ich das machen?
JObject
definiert hierfür die Methode Parse
:
JObject json = JObject.Parse(str);
Vielleicht möchten Sie auf Json.NET documentation verweisen.
wenn Sie kein typisiertes Objekt wünschen oder brauchen, versuchen Sie Folgendes:
using Newtonsoft.Json;
// ...
dynamic json = JsonConvert.DeserializeObject(str);
oder versuchen Sie es für ein typisiertes Objekt:
Foo json = JsonConvert.DeserializeObject<Foo>(str)
Das funktioniert
string str = "{ 'context_name': { 'lower_bound': 'value', 'pper_bound': 'value', 'values': [ 'value1', 'valueN' ] } }";
JavaScriptSerializer j = new JavaScriptSerializer();
object a = j.Deserialize(str, typeof(object));
es gibt eine interessante Möglichkeit, ein weiteres Ziel zu erreichen, nämlich eine starke Typ-Klasse-Basis auf Json mit sehr leistungsstarken Tools, die ich vor einigen Tagen zum ersten Mal verwendet habe, um das Tradedoubler-Json-Ergebnis in Klassen zu übersetzen
Ist ein einfaches Werkzeug: Kopieren Sie Ihre Json-Source-Paste und in wenigen Sekunden Sie haben eine stark typisierte Klasse, die auf Json ausgerichtet ist ..__ Auf diese Weise werden Sie diese Klassen verwenden, die leistungsfähiger und einfach zu verwenden sind.
Ich hoffe das kann dir helfen
Sie können es wie folgt versuchen:
string output = JsonConvert.SerializeObject(jsonStr);
Dies funktioniert für mich mit JsonConvert
var result = JsonConvert.DeserializeObject<Class>(responseString);
Im Falle des JObjects funktioniert dies nicht. Dies funktioniert für die einfachen Daten im Json-Format. Ich habe versucht, meine Daten des unten angegebenen Json-Formats im Typ zu deserialisieren, habe aber keine Antwort erhalten.
Für diesen Json
{
"Customer": {
"id": "Shell",
"Installations": [
{
"id": "Shell.Bangalore",
"Stations": [
{
"id": "Shell.Bangalore.BTM",
"Pumps": [
{
"id": "Shell.Bangalore.BTM.pump1"
},
{
"id": "Shell.Bangalore.BTM.pump2"
},
{
"id": "Shell.Bangalore.BTM.pump3"
}
]
},
{
"id": "Shell.Bangalore.Madiwala",
"Pumps": [
{
"id": "Shell.Bangalore.Madiwala.pump4"
},
{
"id": "Shell.Bangalore.Madiwala.pump5"
}
]
}
]
}
]
}
}