public Task <dynamic> UpdatePartFieldEditorAsync(ContentPartFieldDefinition contentPartFieldDefinition, IUpdateModel updater, string groupId = "") { if (contentPartFieldDefinition == null) { throw new ArgumentNullException(nameof(contentPartFieldDefinition)); } var contentPartDefinition = contentPartFieldDefinition.PartDefinition; dynamic partFieldDefinitionShape = CreateContentShape("ContentPartFieldDefinition_Edit"); _contentDefinitionManager.AlterPartDefinition(contentPartDefinition.Name, partBuilder => { partBuilder.WithField(contentPartFieldDefinition.Name, async partFieldBuilder => { partFieldDefinitionShape.ContentField = contentPartFieldDefinition; var fieldContext = new UpdatePartFieldEditorContext( partFieldBuilder, partFieldDefinitionShape, groupId, _shapeFactory, _layoutAccessor.GetLayout(), updater ); await BindPlacementAsync(fieldContext); await _handlers.InvokeAsync(handler => handler.UpdatePartFieldEditorAsync(contentPartFieldDefinition, fieldContext), Logger); }); }); return(Task.FromResult <dynamic>(partFieldDefinitionShape)); }
public Task UpdatePartFieldEditorAsync(ContentPartFieldDefinition model, UpdatePartFieldEditorContext context) { return(_partFieldDisplayDrivers.InvokeAsync(async contentDisplay => { var result = await contentDisplay.UpdateEditorAsync(model, context); if (result != null) { await result.ApplyAsync(context); } }, Logger)); }