我使用c#json序列化得到以下json输出。它从C#数据表中填充。我需要为对象添加一个级别。
更新 我如何使这个字符串数组,而不是一个对象数组?
[{
"Urgency": "C",
"Picker": null,
"CARD": null,
},
{
"Urgency": "C",
"Picker": null,
"CARD": null,
}]
最终结果应为
{
"data": [
{
"Urgency": "C",
"Picker": null,
"CARD": null,
},
{
"Urgency": "C",
"Picker": null,
"CARD": null,
}
]
}
如何将该顶级添加到现有的json输出中?
这是我的循环。
foreach (DataRow dr in dt.Rows)
{
row = new Dictionary<string, object>();
foreach (DataColumn col in dt.Columns)
{
row.Add(col.ColumnName, dr[col]);
}
rows.Add(row);
}
context.Response.Write(serializer.Serialize(rows).ToString());
答案 0 :(得分:2)
只需创建一个匿名类:
foreach (DataRow dr in dt.Rows)
{
row = new Dictionary<string, object>();
foreach (DataColumn col in dt.Columns)
{
row.Add(col.ColumnName, dr[col]);
}
rows.Add(row);
}
context.Response.Write(serializer.Serialize(new { data= rows }).ToString());
如果您使用的是旧版本的.NET,那么创建一个如下所示的实际类:
public class RowsDTO {
public Dictionary<string,object> Data { get; private set; }
public RowsDTO(){
data = new Dictionary<string,object>();
}
}