本文介绍了Sitecore以编程方式设置多引用字段值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果我有项目/ID集合,如何以编程方式设置多引用字段值?
例如,生成以下原始值"{Guide 1}|{Guide 2}|{Guide 3}."
在我的特定案例中,我需要导入一个项目树,在某一级别上,父级使用子级作为存储库,并且它还具有基于某些条件的子级子集的多引用列表。我想根据排序或筛选来构建一个灵活的列表,然后设置父字段的值,而不使代码特定于列表类型-父字段可以是任何列表。
例如,为每个父级构建规则为"WHERE[IS ODD]orderby Child desc"并设置为"Odd"字段的自定义列表
- Parent1->Parent1["奇数"]=5
- 2
- 5
Parent2->Parent2["奇数"]=3,1 - 1
- 2
- 3
推荐答案
使用类Sitecore.Text.ListString
生成值
示例:
// Incomplete code snippet assumes variable Item item with list field "References"
// and IEnumerable<ID> references
Sitecore.Text.ListString referencesValue = new Sitecore.Text.ListString();
foreach(ID id in references)
{
string idString = id.ToString();
if (!referencesValue.Contains(idString))
{
referencesValue.Add(idString);
}
}
item.Editing.BeginEdit();
item["References"] = referencesValue.ToString();
item.Editing.EndEdit();
这篇关于Sitecore以编程方式设置多引用字段值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!