sitecore中的item.Axes.GetDescendants()和item.Axes.selectitems()之间的根本区别是什么

时间:2017-11-16 12:18:34

标签: sitecore sitecore8

sitecore中item.Axes.GetDescendants()item.Axes.selectitems()之间的基本/性能差异是什么?

2 个答案:

答案 0 :(得分:5)

item.Axes.GetDescendants()使用Sitecore API获取item的所有后代。它会调用item.Children,然后再次为每个孩子child.Children递归。并将所有这些项添加到数组中。

item.Axes.Selectitems(string query)执行在当前项的上下文中的参数中传递的Sitecore查询。

所以这两种方法完全不同。

答案 1 :(得分:1)

item.Axes.selectitems()根据提供的查询选择项目。在sitecore中使用item.Axes.selectitems()总是好主意 而不是GetDescendents,因为Get Descendents总是递归地获取子项,并且如果子项很大,则会有巨大的性能损失。