我有两个收藏:
第一个是“父”节点:
例如
汽车
人
公司
...
在每一个之下,都有一些数据。
- 汽车
1.1。本田
1.2。福特 - 人
2.1。哈里森福特
2.2。心理
2.3。杰西卡·阿尔芭 - 公司
3.1。甲骨文
3.2。微软
等等...
这些是我可以在我的 C# 应用程序中迭代的项目。
为了生成一个模仿上述树的 JSON,我将如何构建一个 dataTable(或任何最适合它的对象)?
这就是我所拥有的,但它并没有真正给我我需要的东西:
public DataTable getNotificationTypeByUser(int id)
{
var bo = new HomeBO();
var list = bo.GetNotificationsForUser(id);
var notificationTreeNode = (from GBLNotifications n in list
where n.NotificationCount != 0
select new NotificationTreeNode(n)).ToList();
var table = new DataTable();
var column1 = new DataColumn
{
DataType = Type.GetType("System.String"),
ColumnName = "NotificationType"
};
table.Columns.Add(column1);
var column2 = new DataColumn
{
DataType = Type.GetType("System.String"),
ColumnName = "NotificationDescription"
};
table.Columns.Add(column2);
foreach (var node in notificationTreeNode)
{
var row1 = table.NewRow();
row1["NotificationType"] = node.ToString();
table.Rows.Add(row1);
var notifications = bo.GetNotificationsForUser(id, node.NotificationNode.NotificationTypeId);
foreach (GBLNotifications n in notifications)
{
var row = table.NewRow();
row["NotificationDescription"] = n.NotificationDescription;
table.Rows.Add(row);
}
}
return table;
}