C# 如何在C语言中动态解析嵌套的Json?
顺便说一句,我需要一些关于json的帮助 我创建了一个名为Workspace的表类,它包含列和行。类行包含该行中的所有数据作为列表:C# 如何在C语言中动态解析嵌套的Json?,c#,json,parsing,dynamic,C#,Json,Parsing,Dynamic,顺便说一句,我需要一些关于json的帮助 我创建了一个名为Workspace的表类,它包含列和行。类行包含该行中的所有数据作为列表: class Workspace { public string Name { get; set; } public List<string> ColumnList; public List<Row> RowList; } class Row { public List<string> DataList {
class Workspace
{
public string Name { get; set; }
public List<string> ColumnList;
public List<Row> RowList;
}
class Row
{
public List<string> DataList { get; set; }
}
有人知道我该怎么办吗?
谢谢Patrick您试用过Newtonsoft吗?从NuGetJSON.Net或ServiceStack.Text获取它,在这种情况下会对您有所帮助。感谢您的快速回复,我也找到了这些。但我无法在我的项目中正确使用它们。如果你是如此有礼貌,并作出一个样本代码,我会非常感谢这一点。
public void FillData(string jsonTxt)
{
var objectJson = DynamicJson.Parse(jsonTxt);
foreach (KeyValuePair<string, dynamic> item in objectJson)
{
if (!ColumnList.Contains(item.Key))
{
ColumnList.Add(item.Key);
}
}
var i = 0;
var newRowList = new List<string>();
foreach (KeyValuePair<string, dynamic> item in objectJson)
{
if (i < ColumnList.Count)
{
newRowList.Add(item.Value);
i++;
}
else
{
AddRow(newRowList);
newRowList = null;
i = 0;
}
}
}
public void AddRow(List<string> row)
{
var r = new Row();
foreach (var s in row)
{
r.AddData(s);
}
RowList.Add(r);
}
{"Ingots":[{"ID":"1","Description":"asdf","Type":"Iron"},{"ID":"2","Description":"asdf2","Type":"Gold"},{"ID":"3","Description":"asdf3","Type":"Diamant"}]}