下面的代码应该返回一个列表中的所有子和子,但是它没有保持父子关系的顺序。它首先返回所有父项,然后返回所有子项。
有没有可能以某种方式保持项目的顺序,并以与Sitecore中相同的顺序将它们放入列表中?
MainItem包含父子关系中的项:
Item mainItem= Sitecore.Context.Database.GetItem(Settings.GetSetting("MainItem"));
mainItem.Axes.GetDescendants().ToList();发布于 2015-05-06 22:56:21
您可以递归地将项添加到列表中:
public void AppendItems(List<Item> itemList, Item item)
{
foreach(Item childItem in item.Children)
{
itemList.Add(childItem);
AppendItems(itemList, childItem);
}
}用法:
var list = new List<Item>();
list.Add(rootItem);
AppendItems(list, rootItem);https://stackoverflow.com/questions/30075829
复制相似问题