通过父节点向导获取所有子代的列表

时间:2019-11-29 10:17:13

标签: kentico

在C#中的Kentico中,是否可以通过父节点Guid的列表获取所有子列表?

2 个答案:

答案 0 :(得分:2)

您需要使用以下内容:

        var parents = DocumentHelper.GetDocuments()
            .Columns("NodeID")
            .Where("nodeguid IN ('DB472111-B6EB-49F9-B98A-53FF2A0BCCF7',
                            '4A7ABB74-33A1-45BB-B382-8C368BDB26F0')");

        var mylist = DocumentHelper.GetDocuments()
            .WhereIn("NodeParentID", parents)
            .OnSite("CorporateSite")
            .Culture("en-CA")
            .ToList();

首先将返回类型multidocumentquery(父级的所有nodeIds)。其次,将在 WHERE 条件下添加它们,并对数据库运行查询。重要说明:这是一个数据库请求,而不是两个。

答案 1 :(得分:1)

您可以使用DocumentQuery按父GUI获取所有子项。应该是这样的:

DocumentHelper.GetDocuments()
.WhereEquals("NodeParentID", GUID);

如果您需要多个页面的子代,只需添加或和另一个GUID。

有关更多详细信息,请参见documentation