以下代码应返回列表中的所有子项和子项,但它不保持父子关系的顺序.它首先返回所有父项,然后返回所有子项.
有可能以某种方式保持项目的顺序,并按照与Sitecore相同的顺序将它们放入列表中吗?
MainItem 包含父子关系中的项目:
Item mainItem= Sitecore.Context.Database.GetItem(Settings.GetSetting("MainItem"));
mainItem.Axes.GetDescendants().ToList();
Run Code Online (Sandbox Code Playgroud)
您可以递归地向列表添加项目:
public void AppendItems(List<Item> itemList, Item item)
{
foreach(Item childItem in item.Children)
{
itemList.Add(childItem);
AppendItems(itemList, childItem);
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
var list = new List<Item>();
list.Add(rootItem);
AppendItems(list, rootItem);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8510 次 |
| 最近记录: |