我有一个标头表,其中包含网页列表。每个记录都有一个页面URL字段,我希望将其解析为一个层次结构(TreeView)。我不确定最好的解决方法,但是在使其正常工作方面遇到了问题。
这是URLS的示例:
/file1.aspx /file2.aspx /aFolder/file.aspx /aFolder/file2.aspx /bfolder/file.aspx /bFolder/cFolder/file.aspx
我想将这种类型的列表放入文件浏览器样式的树形视图中,您可以展开文件夹,然后在最后选择文件。
就像是
--Root | +-aFolder | - aFolderFile1.aspx | - aFolderFile2.aspx +-bFolder +-cFolder | -cFolderFile1.aspx -bFolderFile1.aspx
实际数据显然每个都有更多子文件夹和文件。
我正在寻找的是一些代码,可以是.NET或SQL来解析我的字符串。我试图使用一些与WITH和UNION ALL一起使用的SQL,但我只是无法使它对我有用。
为了将其绑定到TreeView,数据源需要具有父字段才能关联节点。因此,例如,文件cFolderFile1.aspx的父级是cFolder,而cFolder的父级是bFolder,依此类推。
希望我提供了足够的信息。如果没有,请告诉我,我将编辑该帖子。
谢谢大家的建议。这些链接似乎都不是我想要的,因此我最终将某些东西放在一起。
有很多代码,但是总的来说,我将URL列表读入具有一些额外属性的Generic List中,并使用了一些regex语句来解析路径。
因为URLS列表没有任何父ID /子ID,所以我使用了FIND函数并获得了所需的部分。