将自引用数据结构转换为嵌套xml

时间:2014-07-03 15:43:08

标签: c# asp.net xml graph-algorithm

在asp.net Web应用程序中

我有四个数组/列表(客户端)。它是用于在gridview顶部呈现嵌套标题的某种元数据。

  1. 标题:此列表包含名称,组织等所有标题名称(标签)。在同一索引处,列表2包含此标头的父节点,如果它要嵌套在其他标头内。如果没有,则在同一索引列表中,两个将为null。
  2. headerParent:此列表包含第一个列表中某个项目的ID。
  3. 列:此列表包含实际数据列名称的名称。在第四个列表中的相同索引处,它包含此列应显示的标题的名称。
  4. columnParent:此列表包含第一个列表中某个项目的ID。
  5. 我想阅读所有这些列表并将它们转换为某种嵌套XML(在服务器端),然后我可以使用xsl轻松读取或解析。基本上我正在努力使用某种基本算法来处理这些列表。我正在寻找类似于下面的输出。

    <?xml version="1.0" encoding="utf-8" ?>
    <Header name="Table">
     <Header name="Number">
        <Column name="OrgRef"></Column>
        <Column name="OrgTypeId"></Column>
     </Header>
     <Header name="String">
        <Column name="DisplayName"></Column>
     </Header>
     <Column name="OrgCode"></Column>
    </Header>
    

    我也乐于将这些信息存储起来,而不是先将其存储到四个列表中。由于用户将在网站上进行此操作,因此我的选项有限。目前我正在使用javascript并在html控件中保存此信息并在服务器端读取以进一步处理它。

1 个答案:

答案 0 :(得分:0)

我确实找到了类似的问题

Convert parent-child array to tree

因此,我不是将层次结构存储在四个不同的列表中,而是将它们存储为树,我可以使用递归轻松解析。