是否有更新NameValueList字段?
我想找到一个键并以编程方式更新其值。 这是我尝试过的,但不起作用。
Sitecore.Data.Fields.NameValueListField data = Model.Rendering.Item.Fields["Name Value List"];
System.Collections.Specialized.NameValueCollection nameValueCollection = data.NameValues;
using (new Sitecore.SecurityModel.SecurityDisabler())
{
Model.Rendering.Item.Editing.BeginEdit();
nameValueCollection.Set("123456", "New Value");
Model.Rendering.Item.Editing.EndEdit();
}
任何帮助请...
答案 0 :(得分:0)
查看dotPeek中的NameValueListField
,NameValues
属性不会传递对基础数据的引用,而是传递包含已解析值的对象。如果您对NameValueCollection
进行了更改,则需要将其设置回字段。所以像这样:
Sitecore.Data.Fields.NameValueListField data = Model.Rendering.Item.Fields["Name Value List"];
System.Collections.Specialized.NameValueCollection nameValueCollection = data.NameValues;
using (new Sitecore.SecurityModel.SecurityDisabler())
{
Model.Rendering.Item.Editing.BeginEdit();
nameValueCollection.Set("123456", "New Value");
data.NameValues = nameValueCollection;
Model.Rendering.Item.Editing.EndEdit();
}
不相关:您似乎正在编辑Sitecore MVC渲染中的值。请记住以下几点: