2012-04-13 42 views
-2

我有我的JSON字符串。我如何使用JavascriptSerializer反序列化并找到SSOID的值?如何反序列化JSON并提取特定值?

{ 
"Addresses": [ 
    { 
     "Address": "123 Test Road", 
     "State": "Mississippi" 
    } 
], 
"Birthdate": "April 12 2012", 
"CreateDate": "April 13 2012", 
"IDs": [ 
    { 
     "isDefault": false, 
     "PurchaseID": "883" 
    } 
], 
"Sex": "Male", 
"SSOID": 23444, 
"Suffix": null, 
"BoardID": 4324 
} 
+1

你试过http://msdn.microsoft.com/en-us/library /system.web.script.serialization.javascriptserializer.deserializeobject%28v=vs.90%29.aspx? – Matthew 2012-04-13 20:41:24

回答

1

在这种特殊情况下:

string s = "your json string"; 
System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer(); 
var obj = js.DeserializeObject(s) as Dictionary<string,object>; 
int ssoid = (int)obj["SSOID"]; 
1
var js = new JavaScriptSerializer(); 
var deserialized = (Dictionary<string, object>) js.DeserializeObject(json); 
var ssoid = (int) deserialized["SSOID"]; 
0
var SSOID = new JavaScriptSerializer() 
        .Deserialize<Dictionary<string, object>>(json)["SSOID"]; 

OR

dynamic jObj = new JavaScriptSerializer().DeserializeObject(json); 
var SSOID = jObj["SSOID"];