Asp.net 通过中继器控件在无序列表中显示数据库中的分层数据

Asp.net 通过中继器控件在无序列表中显示数据库中的分层数据,asp.net,Asp.net,我有一个数据库表,其中包含一些Id、parentId和其他与数据相关的字段。 我想使用repeater控件在嵌套的SN级嵌套中显示所有这些。 我不想使用任何其他第三方控件,也不想使用TreeView 首先,我将数据库中的数据读取一次到一个集合列表中,然后在该列表上进行操作以获得层次结构 问题是如何构建repeater的模板? Repeater的模板是静态的,所以我唯一能准备的就是开始和结束以及结束 如何使用嵌套uls?如何创建它们 请建议。您可以在项目模板中嵌套更多的repeater控件,并将它

我有一个数据库表,其中包含一些Id、parentId和其他与数据相关的字段。 我想使用repeater控件在嵌套的SN级嵌套中显示所有这些。 我不想使用任何其他第三方控件,也不想使用TreeView

首先,我将数据库中的数据读取一次到一个集合列表中,然后在该列表上进行操作以获得层次结构

问题是如何构建repeater的模板? Repeater的模板是静态的,所以我唯一能准备的就是开始和结束以及结束

如何使用嵌套uls?如何创建它们


请建议。

您可以在项目模板中嵌套更多的repeater控件,并将它们绑定到数据的子集


或者,我建议您以编程方式构建您的项目模板。

您将无法使用标准的中继器来实现这一点。您可以嵌套中继器,但这需要一些编程调整来构建层次结构。另一种方法是使用TreeView控件。如果您不喜欢内置的TreeView,并且想要更干净的标记,那么Asp.NETMVC听起来更适合。如果你想要一个更中庸的解决方案,Asp.Net可能会对你更好。

是的,嵌套中继器是我最初的解决方案!但我想要更简单的!对客户端来说,编程更简单还是结果更简单?绑定到treeview非常简单。我不想要tree,我正在构建更复杂的东西。无论如何,这在概念上是一棵树。问题是它如何发出html,这就是为什么我建议使用CSS友好的控件适配器。这样,您就可以让树在每个节点的开始处发射一个,并在每个节点的结束处发射一个。树视图和菜单都可以可视化层次结构信息。没有适配器,两者都使用HTML标记。可以使用控件适配器来呈现嵌套的标记。我不能使用treeview控件,因为每个项都需要一个复杂的模板,而treeview不支持项模板。如何以编程方式构建项模板?