系统中机构管理的树如何递归建立?

walkghost walkghost 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

数据库结构:
PlaceInfo:
PlaceID, nvarchar
PlaceName, nvarchar
ParentPlaceID nvarchar
示例:
1000------一层
|---100001--二层
| |-----10000101--三层
| |-----10000102--三层
|
|---100002--二层
每增加一层机构,机构编号增加两位,每层机构的编号由01-99。

在用户登录的时候判断用户所在的机构(用户表里面有用户所属机构的字段)和用户类型。如果用户是管理员,就查询出他所属的机构编号和所有他的下属机构的编号。然后用这些机构名称动态的构建树的节点,当用户点击该节点时,右面框架的页面跳转到机构管理页面并把用户所点击的节点的机构编号传递过去。
问题出来了:

如果三层机构的话,递归建树效率应该还凑合。可是机构层数要是稍微再多一些。估计效率就太慢了。有没有更好的方法?
把用户登录的时候获得的一系列机构编号保存在何处?写一个类?还是保存在其他的数据结构中?如何递归构造?
...全文

相关推荐

评论 17
收藏 已收藏
分享
返回顶部
walkghost
.NET社区 62,273 成员 668,968 内容