在填充了公司所有员工的SQL数据库表中,在asp.net(C#)中生成分层树视图的最佳方法是什么?我永远不会知道我将从什么级别或员工开始。任何链接或方向将不胜感激。
答案 0 :(得分:3)
选项一:以xml格式从数据库中获取分层数据(使用SQL Server 2005和更新版本的FOR XML语句)然后将其反序列化为业务实体对象或直接在UI中用作数据源(treeview)控件支持XML数据源)。使用SQL Server 2008,您还可以使用HIERARCHYID字段而不是ParentID,这简化了与分层数据存储和检索相关的操作,使用它从指定节点检索数据的SELECT语句将更加简单。
答案 1 :(得分:1)
在以下位置查看Modified Preorder Tree Traversal技术:
http://www.sitepoint.com/article/hierarchical-data-database/ http://en.wikipedia.org/wiki/Tree_traversal http://www.intelligententerprise.com/001020/celko.jhtml?_requestid=1266295 http://iamcam.wordpress.com/2006/03/17/storing-hierarchical-data-in-a-database-part-1/