2

这是我当前的问题。我需要显示一个显示召回名册的树状结构。我们的 DBA 创建了一个返回 [level],[name],[contact_info] 的存储过程。

示例如下所示:

[1] [test name1] [contact info]
[2] [sub to1] [contact info]
[3] [sub to2] [contact info]
[4] [sub to3] [contact info]
[3] [sub to2] [contact info]
[2] [sub to1] [contact info]

ETC...

它按层次结构的顺序排序

我并没有真正使用过 XML,但这是加载/呈现这些数据的方式。目前,当我检索数据时,我将其返回到数据表中。可能还需要将此数据导出到 Excel。

任何人都可以为我指出一个好的方向吗?

4

1 回答 1

0

1) 不要相信任何你无法建立和操纵的数据结果顺序。从存储过程中检索数据的“标准”方式是数据读取器、数据表或数据集。您甚至可以使用实体框架来封装数据。他们都不能确保订单被保留。假设您的结果集将被订购是太冒险了。

2) 要求您的 DBA 在结果中包含层次结构信息(例如,具有父记录键的字段)

3)递归适用于层次结构问题。设计您的算法以从一个 xml 节点和一堆顶级记录开始。对于每条记录:添加一个新的 xmlnode 并进行递归调用,传递您刚刚添加的记录的子项。

4)如果预期结果很小(比如说几百条记录),您可以获取所有数据,将其存储在数据表中并使用 Filter 属性搜索特定记录。如果预期结果是几千条记录,请让您的 DBA 创建一个存储过程来读取一条记录的子记录,并为 xml 节点中的每条记录调用该过程。确保数据中没有循环:)

于 2012-10-15T15:38:37.203 回答