在穿越Umbraco后获得Collection

本文关键字:Collection 穿越 Umbraco | 更新日期: 2023-09-27 18:16:16

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

(*)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]上我想遍历结点[2.1]Happy。此外,我想访问所有的子,子和子....[2.1] Happy.

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

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

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

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

我使用@ model . ancestor (3);但没能达到我的目标。

感谢您的帮助

在穿越Umbraco后获得Collection

我建议使用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")

等。