Reputation: 1554
I have JSON string that come from a WebService. I have use this code to convert it to object.
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
object cw_values = serializer.DeserializeObject(cw_stringData);
Where cw_stringData
is my JSON.
It returns an object{object[69]}
to me. for example it means that it contains 69 items as its first level.
I have convert it again by this code.
object[] final_cw_values = ((object[])(cw_values));
So now final_cw_values
has type object[]
.
Each 69 items in final_cw_values
have this type.
object {System.Collections.Generic.Dictionary<string,object>}
That have 15 items in it.
Each inner item have type:
System.Collections.Generic.KeyValuePair<string,object>
That contain one Key
and one Value
.
I need to have these Value
in an Array.
If I click at Value
and click Add to Watch
I have some code like this but it don't work in my code.
(new System.Collections.Generic.Mscorlib_DictionaryDebugView<string,object>(((System.Collections.Generic.Dictionary<string,object>)(final_cw_values[0])))).Items[0].Value
This is part of my JSON:
[
{
"FirstWeight": -1,
"SecondWeight": 0,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:rowspan,3;SecondWeight:rowspan,3;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.2 اندازه در بورس",
"Hidden2": "202 ",
"ThirdLevel": "2.2.1 ارزش بازار (م ر)",
"Hidden3": "10031 ",
"ProfileCode": "1",
"ThirdWeight": 22,
"FirstEffectiveWeight": 50,
"SecondEffectiveWeight": 25,
"ThirdEffectiveWeight": 5.5,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.2 اندازه در بورس",
"Hidden2": "202 ",
"ThirdLevel": "2.2.2 درصد سهام شناور آزاد (%)",
"Hidden3": "10036 ",
"ProfileCode": "1",
"ThirdWeight": 52,
"FirstEffectiveWeight": 50,
"SecondEffectiveWeight": 25,
"ThirdEffectiveWeight": 13,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.2 اندازه در بورس",
"Hidden2": "202 ",
"ThirdLevel": "2.2.3 ارزش بازار شناور آزاد (م ر)",
"Hidden3": "10053 ",
"ProfileCode": "1",
"ThirdWeight": 12,
"FirstEffectiveWeight": 50,
"SecondEffectiveWeight": 25,
"ThirdEffectiveWeight": 3,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": 0,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:rowspan,5;SecondWeight:rowspan,5;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.3 نفدشوندگی سهام در بورس",
"Hidden2": "203 ",
"ThirdLevel": "2.3.1 تعداد روزهای بدون معامله اخیر",
"Hidden3": "10066 ",
"ProfileCode": "1",
"ThirdWeight": 2,
"FirstEffectiveWeight": 50,
"SecondEffectiveWeight": 25,
"ThirdEffectiveWeight": 0.5,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.3 نفدشوندگی سهام در بورس",
"Hidden2": "203 ",
"ThirdLevel": "2.3.2 تعداد روزهای معامله شده در سال جاری",
"Hidden3": "10095 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.3 نفدشوندگی سهام در بورس",
"Hidden2": "203 ",
"ThirdLevel": "2.3.3 متوسط تعداد روزهای معامله شده در سال",
"Hidden3": "10131 ",
"ProfileCode": "1",
"ThirdWeight": 15,
"FirstEffectiveWeight": 50,
"SecondEffectiveWeight": 25,
"ThirdEffectiveWeight": 3.75,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.3 نفدشوندگی سهام در بورس",
"Hidden2": "203 ",
"ThirdLevel": "2.3.4 تعداد معاملات در سال جاری",
"Hidden3": "10135 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": 0,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:rowspan,4;SecondWeight:rowspan,4;",
"class": "not-editable-row",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.4 قیمت سهام در بورس",
"Hidden2": "204 ",
"ThirdLevel": "2.4.1 قیمت پابانی",
"Hidden3": "10185 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"class": "not-editable-row",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.4 قیمت سهام در بورس",
"Hidden2": "204 ",
"ThirdLevel": "2.4.3 پایین ترین قیمت در 52 هفته گذشته",
"Hidden3": "10304 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": -1,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:display,none;SecondWeight:display,none;",
"class": "not-editable-row",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.4 قیمت سهام در بورس",
"Hidden2": "204 ",
"ThirdLevel": "2.4.4 متوسط قیمت در 12 هفته گذشته",
"Hidden3": "10312 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
},
{
"FirstWeight": -1,
"SecondWeight": 0,
"attr": "FirstLevel:display,none;FirstWeight:display,none;SecondLevel:rowspan,5;SecondWeight:rowspan,5;",
"FirstLevel": "2. معیارهای معاملاتی",
"Hidden1": "2 ",
"SecondLevel": "2.5 بازدهی سهام در بورس",
"Hidden2": "205 ",
"ThirdLevel": "2.5.1 آخرین بازده روزانه (%)",
"Hidden3": "10186 ",
"ProfileCode": "1",
"ThirdWeight": 0,
"FirstEffectiveWeight": 0,
"SecondEffectiveWeight": 0,
"ThirdEffectiveWeight": 0,
"Clustering": 1
}
]
Mohammad
Upvotes: 0
Views: 830
Reputation: 5222
Better if you create strongly typed class.
public class Data
{
public int FirstWeight { get; set; }
public int SecondWeight { get; set; }
public string attr { get; set; }
public string FirstLevel { get; set; }
public string Hidden1 { get; set; }
public string SecondLevel { get; set; }
public string Hidden2 { get; set; }
public string ThirdLevel { get; set; }
public string Hidden3 { get; set; }
public string ProfileCode { get; set; }
public int ThirdWeight { get; set; }
public int FirstEffectiveWeight { get; set; }
public int SecondEffectiveWeight { get; set; }
public double ThirdEffectiveWeight { get; set; }
public int Clustering { get; set; }
}
And convert like
JavaScriptSerializer serializer = new JavaScriptSerializer();
List<Data> lstValues = serializer.Deserialize<List<Data>>(cw_stringData);
Upvotes: 3