我使用了这个有用的 JQuery 函数来序列化嵌套元素。问题是如何使用 c# 反序列化它。
下面的代码给出
没有为“System.Collections.Generic.IList”类型定义无参数构造函数
string json = @"{""root"":{""id"":""main"",""text"":""150px"",""children"":
[{""id"":""divcls"",""text"":""50px"",""children"":
[{""id"":""qs1"",""text"":""0px"",""children"":[]}]},
{""id"":""divcls2"",""text"":""50px"",""children"":[]},
{""id"":""divcls3"",""text"":""50px"",""children"":[]}]}}";
IList<Commn.main1> objs = new JavaScriptSerializer()
.Deserialize<IList<Commn.main1>>(json);
string blky = "";
foreach (var item in objs)
{
blky += item.id;
}
Label1.Text = Convert.ToString(blky);
public class main1
{
public string id { get; set; }
public string text { get; set; }
public sub1 children { get; set; }
}
public class sub1
{
public string Qid { get; set; }
public string Qval { get; set; }
}
我的 Json 只有 2 级深如果解决方案是递归的,我怎么知道元素的深度
顺便说一句,类可以像这样引用自己
public class main1
{
public string id { get; set; }
public string text { get; set; }
public main1 children { get; set; }
}