首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从Umbraco中的子节点获取所有根节点的列表

从Umbraco中的子节点获取所有根节点的列表
EN

Stack Overflow用户
提问于 2016-11-25 06:34:01
回答 2查看 2.3K关注 0票数 0

我有三种文档类型及其相应的模板。我的树如下所示。

代码语言:javascript
运行
复制
1. Video List
   2.  Video Item
       3. Item Details

“视频列表”页面列出“视频项目”模板中的所有项目。项目详细信息是视频项目模板的子节点。我要从项目详细信息页面中的所有节点在视频项目。

我试过下面的代码。但是它显示为Xpath需要一些程序集引用。

代码语言:javascript
运行
复制
Model.Content.XPath("//*[@isDoc and @level = 1]");

请帮帮忙

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-25 10:05:04

这件事不难做。在@Ancestor循环中使用@Children,然后在@foreach循环中使用@foreach。阅读有关在Umbraco页面上使用Umbraco遍历的更多信息。

假设我们在项目细节模板(或者页面上,不管你想怎么称呼它),并且你需要列出你所有的父母和你父母的兄弟姐妹(如果我正确理解的话)。所以你去找“祖父母”,向孩子们问起:

代码语言:javascript
运行
复制
    @foreach (var item in Model.Content.Ancestor("VideoList").Children)
    {
       //do whatever you feel like in the collection. 
       //This foreach loop will list you all the Video Item nodes.

    }

我以为VideoList是你的视频列表页面拥有的docTypeAlias。

票数 1
EN

Stack Overflow用户

发布于 2016-11-25 06:41:05

我有一个解决办法。这是我的代码:

代码语言:javascript
运行
复制
var parentClass = Umbraco.TypedContent(Model.Content.Id).Parent.Parent.Children.Where(x => x.DocumentTypeAlias == "videoItem" && x.IsVisible());

但是,这是获取父节点的正确方法吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40799020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档