0

这是我的项目文件夹结构到树结构

(*)Root
     []English
            [1]Novel
            [2]Thriller
                    [2.1]Happy
                              [2.1.1]Life Happy
                                           HappyInLife
                                           LoveInLife
                              [2.1.2]Joy
                                           everywhereJoy
                              [2.1.3]Lauging
                                           Always
                                           Sometimes
                                           Never
                    [2.2]Sad
                    [2.3]Excited
                    [2.4]Alone
            [3]Love Story
            [4]Action
     []Hindi
     []Marathi

现在在上面的结构中,我在节点 [2.4]Alone 处,我想在节点 [2.1]Happy 处遍历。此外,我想访问节点 [2.1] Happy 的所有 children 、 sub children 和 sub ....。

我的项目要求是从节点 [2.4]Alone 显示节点 [2.1]Happy 及其所有子节点和子子节点等等......

到目前为止我的工作(我在节点 [2.4]Alone)

var home=@Model.Parent.Children.First();

所以 home 里面会有节点 [2.1]Happy 。但问题是它只会给我[2.1]Happy的孩子而不是它的孩子的孩子等等......

我厌倦了使用@Model.AncestorsOrSelf(3); 但无法实现我的目标。

任何帮助表示赞赏

4

1 回答 1

1

我建议使用 uQuery: (1) (2)

代码如下所示:

@using umbraco

var current = umbraco.NodeFactory.Node.GetCurrent();
var your21Happy = current.Parent.GetChildNodes().First(); // or the way you was getting it already.
var descendants = your21Happy.GetDescendantNodes();

uQuery 非常灵活,您可以按任何方式过滤查询的节点,例如

.GetDescendantNodesByType("uBlogsyPost")

或者

.GetDescendantNodes(x => x.WriterName == "admin")

等等

于 2013-05-31T11:06:36.287 回答