使用 LINQ 按层次顺序显示数据

4

我有一张名为department的表格,包含以下列。

Id  (P.K.)
Name
ParentDepartmentId (F.K. of same Department table)

现在我希望使用LINQ以分层方式显示所有数据。类似这样:
 IT
    .Net
        Web Developer
        Windows Developer
    Java
    PHP
Technical Support
    OffLine
    Online

IT部门包括.Net、Java和PHP三个子部门,其中.Net又分为Web开发人员和Windows开发人员等子部门。

我如何使用LINQ实现这一目标。我正在使用C#、Entity Framework等ASP.Net MVC 3.0。


你想将它绑定到某个树视图吗? - Kangkan
你想要以树形结构展示它吗? - COLD TOLD
我认为TreeView是一个ASP.Net控件,而我正在使用ASP.Net MVC。这就是为什么我想要在不绑定任何控件的情况下显示它的原因。 - user946393
@Cold Told 是的,我想要以树形结构显示它。 - user946393
4个回答


0
你需要使用 GroupBy 函数。

是的,我认为你是对的。但是我们如何在Linq中使用GroupBy呢?你能否给我一个查询来以树形结构显示它? - user946393

0

0

你可以在你的动作代码中构建一个简单的HTML集合,为你动态构建的HTML分配特定的值,并使用linq获取这些值。然后在你的视图中,当你使用viewdata返回它时,将其呈现为纯HTML,并使用jquery创建树形结构。这里有一些很好的jquery树插件的例子。

http://mbraak.github.com/jqTree/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接