gpt4 book ai didi

c# - 从 SQL 查询 c# 创建树/XML 结构

转载 作者:太空宇宙 更新时间:2023-11-03 16:24:48 27 4
gpt4 key购买 nike

这是我当前的问题。我需要显示一个树状结构来显示召回名册。我们的 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]

等...

按照层级顺序排序

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

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

最佳答案

1) 不要相信任何您无法建立和操纵的数据结果顺序。从存储过程中检索数据的“标准”方法是数据读取器、数据表或数据集。您甚至可以使用 Entity Framework 来封装数据。它们都不能确保保留顺序。假设您的结果集将被排序风险太大。

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

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

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

关于c# - 从 SQL 查询 c# 创建树/XML 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12898803/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com