public override async Task <IDisplayResult> UpdateAsync(ContentTypePartDefinition contentTypePartDefinition, UpdateTypePartEditorContext context) { if (!String.Equals(nameof(AutoroutePart), contentTypePartDefinition.PartDefinition.Name)) { return(null); } var model = new AutoroutePartSettingsViewModel(); await context.Updater.TryUpdateModelAsync(model, Prefix, m => m.Pattern, m => m.AllowCustomPath, m => m.AllowUpdatePath, m => m.ShowHomepageOption); if (!string.IsNullOrEmpty(model.Pattern) && !_templateManager.Validate(model.Pattern, out var errors)) { context.Updater.ModelState.AddModelError(nameof(model.Pattern), S["Pattern doesn't contain a valid Liquid expression. Details: {0}", string.Join(" ", errors)]); } else { context.Builder.WithSettings(new AutoroutePartSettings { Pattern = model.Pattern, AllowCustomPath = model.AllowCustomPath, AllowUpdatePath = model.AllowUpdatePath, ShowHomepageOption = model.ShowHomepageOption }); } return(Edit(contentTypePartDefinition, context.Updater)); }
public override async Task <IDisplayResult> UpdateAsync(ContentTypePartDefinition contentTypePartDefinition, UpdateTypePartEditorContext context) { if (!String.Equals("AutoroutePart", contentTypePartDefinition.PartDefinition.Name, StringComparison.Ordinal)) { return(null); } var model = new AutoroutePartSettingsViewModel(); await context.Updater.TryUpdateModelAsync(model, Prefix, m => m.Pattern, m => m.AllowCustomPath); context.Builder.WithSetting(nameof(AutoroutePartSettings.Pattern), model.Pattern); context.Builder.WithSetting(nameof(AutoroutePartSettings.AllowCustomPath), model.AllowCustomPath.ToString()); return(Edit(contentTypePartDefinition, context.Updater)); }