この文字列をデータベースに格納します。
str = "{ "context_name": { "lower_bound": "value", "upper_bound": "value", "values": [ "value1", "valueN" ] } }"
この文字列はすでにJSON形式ですが、JObjectまたはJSONオブジェクトに変換したいです。
JObject json = new JObject();
私はjson = (JObject)str;
キャストを試しましたが、うまくいきませんでした。
型指定されたオブジェクトが欲しくないか必要ないなら、試してください:
using Newtonsoft.Json;
// ...
dynamic json = JsonConvert.DeserializeObject(str);
または型付きオブジェクトを試す:
Foo json = JsonConvert.DeserializeObject<Foo>(str)
この作品
string str = "{ 'context_name': { 'lower_bound': 'value', 'pper_bound': 'value', 'values': [ 'value1', 'valueN' ] } }";
JavaScriptSerializer j = new JavaScriptSerializer();
object a = j.Deserialize(str, typeof(object));
もう1つの目標を達成するための興味深い方法があります。それは、私が数日前に取引されたjsonの結果をクラスに変換するために初めて使用した非常に強力なツールでjsonに強く型付けされたクラスベースを持つことです
簡単なツールです:あなたのjsonソースペーストをコピーすると、数秒で 強く型付けされたクラスjson指向 になるでしょう。このようにして、あなたはこれらのクラスを使うでしょう。
お役に立てば幸いです。
あなたは次のように試すことができます:
string output = JsonConvert.SerializeObject(jsonStr);
これは私にとってJsonConvert
を使用して動作します
var result = JsonConvert.DeserializeObject<Class>(responseString);
これは単純なjson形式のデータに対して機能するJObjectの場合には機能しません。以下のJSON形式のデータを型の中でデシリアライズしようとしましたが応答がありませんでした。
この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"
}
]
}
]
}
]
}
}