我有一个站点核心项目“CurrentItem
”,其中包含一个字段“image
”。我正在从后面的代码中编辑它,如下所示:
//Get the Image from /sitecore/media library/Images/Test
Item imageItem = Sitecore.Context.Database.GetItem("{AEBB3071-3462-405C-9CD3-A2B515B343D1}")
//Edit
CurrentItem.Editing.BeginEdit();
CurrentItem["image"] = imageItem.ToString();
CurrentItem.Editing.EndEdit();
PS: imageItem
是/sitecore/media library/Images/Test
下的一张图片
我也试过 CurrentItem["image"] = imageItem.Paths.Path;
但还是不行。
最佳答案
需要将字段取为ImageField
,并设置MediaID属性为MediaItem的ID:
//Get the Image from /sitecore/media library/Images/Test
Sitecore.Data.Items.MediaItem imageItem = Sitecore.Context.Database.GetItem("{AEBB3071-3462-405C-9CD3-A2B515B343D1}")
//Edit
CurrentItem.Editing.BeginEdit();
var imageField = CurrentItem.Fields["image"] as ImageField;
imageField.MediaID = imageItem.ID;
imageField.MediaPath = imageItem.MediaPath;
CurrentItem.Editing.EndEdit();
你也可以看看this博客文章以获取有关 6.X 版本的更多解释。
关于c# - 如何从代码隐藏编辑 Sitecore 图像字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34335359/