public ActionResult UpdateContent(UpdateContentModel updateContentModel) { var props = updateContentModel.Properties.Split(','); var message = ""; try { foreach (var updateContent in updateContentModel.Contents) { var content = _contentRepository.Get <IContent>(updateContent.ContentLink.GuidValue.Value); if (!(((IReadOnly)content)?.CreateWritableClone() is IContent clone)) { message = "No IReadonly implementation!"; } else { foreach (var prop in props) { var propData = clone.Property.FirstOrDefault(o => o.Name == prop); propData.Value = updateContent.Properties[prop]; clone.Property.Set(prop, propData); } clone.Name = updateContent.Name; _contentRepository.Save(clone, EPiServer.DataAccess.SaveAction.Publish); } }
public async Task <IActionResult> UpdateAsync(Guid widgetId, [FromBody] UpdateContentModel model) { var entity = await _widgetContentService.GetAsync <CustomHtmlModel>(widgetId, string.Empty); if (entity == null) { await _widgetContentService.InsertAsync(new CustomHtmlModel() { UserId = string.Empty, WidgetId = widgetId, Content = model.Content, }); } else { entity.Content = model.Content; await _widgetContentService.UpdateAsync(entity); } return(Ok()); }