我需要json的帮助,顺便说一句,我正在使用http://dynamicjson.codeplex.com/。
我创建了一个名为“Workspace”的表类,其中包含Columns和Rows。 “Row”类包含列中的所有数据:
class Workspace
{
public string Name { get; set; }
public List<string> ColumnList;
public List<Row> RowList;
}
class Row
{
public List<string> DataList { get; set; }
}
所以我得到的是一个json字符串,我必须以一种数据在工作区中完全填充的方式解析它。 到目前为止,我已经得到了这段代码:
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);
}
它工作正常,但json-string是嵌套的。例如一个简单的数组:
{"Ingots":[{"ID":"1","Description":"asdf","Type":"Iron"},{"ID":"2","Description":"asdf2","Type":"Gold"},{"ID":"3","Description":"asdf3","Type":"Diamant"}]}
有人知道如何管理这个吗? 谢谢Patrick