Model view controller Sitecore以编程方式更新NameValueList
是否仍要更新NameValueList字段 我想找到一个键并以编程方式更新它的值。 这是我试过的,但不起作用Model view controller Sitecore以编程方式更新NameValueList,model-view-controller,sitecore,Model View Controller,Sitecore,是否仍要更新NameValueList字段 我想找到一个键并以编程方式更新它的值。 这是我试过的,但不起作用 Sitecore.Data.Fields.NameValueListField Data=Model.Rendering.Item.Fields[“名称值列表”]; System.Collections.Specialized.NameValueCollection NameValueCollection=data.NameValues; 使用(新Sitecore.SecurityMo
Sitecore.Data.Fields.NameValueListField Data=Model.Rendering.Item.Fields[“名称值列表”];
System.Collections.Specialized.NameValueCollection NameValueCollection=data.NameValues;
使用(新Sitecore.SecurityModel.SecurityDisabler())
{
Model.Rendering.Item.Editing.BeginEdit();
nameValueCollection.Set(“123456”,“新值”);
Model.Rendering.Item.Editing.EndEdit();
}
请提供任何帮助…查看dotPeek中的
NameValueListField
,NameValues
属性不会传递对基础数据的引用,而是传递包含解析值的对象。如果更改了NameValueCollection
,则需要将其设置回字段。比如说:
Sitecore.Data.Fields.NameValueListField Data=Model.Rendering.Item.Fields[“名称值列表”];
System.Collections.Specialized.NameValueCollection NameValueCollection=data.NameValues;
使用(新Sitecore.SecurityModel.SecurityDisabler())
{
Model.Rendering.Item.Editing.BeginEdit();
nameValueCollection.Set(“123456”,“新值”);
data.NameValues=nameValueCollection;
Model.Rendering.Item.Editing.EndEdit();
}
无关:您似乎正在编辑Sitecore MVC呈现中的值。请记住以下几点:
- 默认情况下,这将是web数据库,发布时将覆盖这些值
- 写入Sitecore数据库的速度非常慢,而且在面向公众的网页中,这通常是一个坏主意,因为这些网页的流量甚至很小