我正在尝试反序列化我编写的Json格式数据代码
string strJSONData = "[{ \"StatusValue\": \"Test1\", \"StatusValue1\": \"Test2\", \"StatusValue2\": \"Test3\", \"StatusValue3\": \"Test4\", \"test\": \"hibaby\" }, { \"StatusValue\": \"aTest1\", \"StatusValue1\": \"bTest2\", \"StatusValue2\": \"cTest3\", \"StatusValue3\": \"dTest4\",\"test\": \"hibaby u\" }]";
JavaScriptSerializer objJavaScriptSerializer = new JavaScriptSerializer();
List<StatusValueTest> objStatus = objJavaScriptSerializer.Deserialize<List<StatusValueTest>>(strJSONData);
foreach (StatusValueTest val in objStatus)
{
Label1.Text += val.StatusValue;
}
}
两个班:
public class StatusValueTest
{
public string StatusValue { get; set; }
public string StatusValue1 { get; set; }
public string StatusValue2 { get; set; }
public string StatusValue3 { get; set; }
public List<StatusList> ram { get; set; }
public StatusValueTest()
{
ram = new List<StatusList>();
}
}
和
public class StatusList
{
public string test { get; set; }
public StatusList()
{
}
}
jSON数据:"[{ \"StatusValue\": \"Test1\", \"StatusValue1\": \"Test2\", \"StatusValue2\": \"Test3\", \"StatusValue3\": \"Test4\", \"test\": \"hibaby\" },
{ \"StatusValue\": \"aTest1\", \"StatusValue1\": \"bTest2\", \"StatusValue2\": \"cTest3\", \"StatusValue3\": \"dTest4\",\"test\": \"hibaby u\" }]";
在StatusValue中,StatusValue1,StatusValue2,StatusValue3即将到来,但值不会进入测试。我无法弄清楚为什么会发生这种情况..请在这里帮助我
答案 0 :(得分:0)
您是否有能力修改JSON数据?看起来应该更像这样:
[{ \"StatusValue\": \"Test1\",
\"StatusValue1\": \"Test2\",
\"StatusValue2\": \"Test3\",
\"StatusValue3\": \"Test4\",
\"ram\": {\"test"\", hibaby\"}
}]
答案 1 :(得分:0)
如果我把一切都弄好了,你的json看起来应该是以下
[{
"StatusValue": "Test1",
"StatusValue1": "Test2",
"StatusValue2": "Test3",
"StatusValue3": "Test4",
"ram ":
[{
"test":"hibaby"
},{
"test":"hibaby1"
}]
}]