我是Umbraco的新手,问题是我有5个根节点,并且我有一个包含在这些根节点中的随机页面列表。我从这些页面收到的数据是NodeId, NodeName和Level。我要做的是获取每个页面的根节点信息。不幸的是,这就是我遇到问题的地方,是否有一种方法可以根据NodeId获得根节点或1级节点的信息。
这是我目前得到的:
foreach (var item in pages)
{
int level = item["level"].AsInt();
if (level > 1){
var currentItem = library.GetCurrentDomains(item.Id);
}
}
我试过library.GetCurrentDomains(item.Id),但是这个不起作用
不完全确定这是否是您所需要的,也不确定这是否是最好的方法,但是您可以这样做
item.Path.Split(',')[1]
获取任何节点的第二级"根"。我认为;-)
假设随机页面列表都是ipublishhedcontent,您可以在页面上使用扩展方法AncestorOrSelf(1),它将获得页面的根节点。例如
foreach (var item in pages)
{
var rootPage = item.AncestorOrSelf(1);
//do something with the root node here
}