【发布时间】:2010-01-04 16:49:45
【问题描述】:
我有一个名为 MenuItem(MenuItemID、ParentMenuItemID、MenuItemName)的数据库表。我想用它来填充一个 Menu 控件(可能是 .NET Menu 控件)。
每个 MenuItem 都有一个父项。如果没有父级,则它是顶级菜单项。我制作了一个映射到 MenuItem 表的 LINQ to SQL 类。由于我的表具有从 ParentMenuItemID 到 MenuItemID 的外键,因此我的自动生成的 MenuItem 类包含 MenuItem 的集合。此集合应包含菜单项的所有子项。
结果应该存储在一个列表中。
是否可以在一个查询中获取:
- 所有顶级菜单项
- 所有子级到其父对象下收集的顶级菜单项
获取顶级菜单项然后迭代它们并查询每个子项,或者获取所有菜单项然后将它们放在正确的父项中应该没有任何问题。但如果这可以在一个查询中完成......我会很高兴:)
【问题讨论】:
标签: linq linq-to-sql